Re: Has anyone used linode.com to run Solr | ??Best way to deliver PHP/Apache clients with Solr question

2016-12-18 Thread GW
Wow, thanks.

So assuming I have a five node ensemble and one machine is rolling along as
leader, am I correct to assume that as a leader becomes taxed it can lose
the election and another takes over as leader? The leader actually floats
about the ensemble under load? I was thinking the leader was merely for
referential integrity and things stayed that way until a physical failure.

This would all seem important when building indexes.

I think I need to set up a sniffer.

Identifying the node with a hash id seems very cool. If my app makes the
call to the server with the appropriate shard, then there might only be
messaging on the Zookeeper network. Is this a correct assumption?

Is my terminology cross threaded?

Oh well, time to build my first cluster. I wrote all my clients with single
shard collections on a stand alone. Now I need to make sure my app is not a
cluster buster.

I feel like I am on the right path.

Thanks and Best,

GW

















On 18 December 2016 at 09:53, Dorian Hoxha  wrote:

> On Sun, Dec 18, 2016 at 3:48 PM, GW  wrote:
>
> > Yeah,
> >
> >
> > I'll look at the proxy you suggested shortly.
> >
> > I've discovered that the idea of making a zookeeper aware app is
> pointless
> > when scripting REST calls right after I installed libzookeeper.
> >
> > Zookeeper is there to provide the zookeeping for Solr: End of story. Me
> > thinks
> >
> > I believe what really has to happen is: connect to the admin API to get
> > status
> >
> > /solr/admin/collections?action=CLUSTERSTATUS
> >
> > I think it is more sensible to make a cluster aware app.
> >
> > 1 > name="shards"> > name="range">8000-7fffactive > name="replicas"> > name="core">FrogMerchants_shard1_replica1
> > http://10.128.0.2:8983/solr > name="node_name">10.128.0.2:8983_solr > name="state">active > name="leader">true
> >
> > I can get an array of nodes that have a state of active. So if I have 7
> > nodes that are state = active, I will have those in an array. Then I can
> > use rand() funtion with an array count to select a node/url to post a
> json
> > string. It would eliminate the need for a load balancer. I think.
> >
> If you send to random(node), there is high chance(increasing with number of
> nodes/shards) that node won't have the leader, so that node will also
> redirect it to the leader. What you can do, is compute the hash of the 'id'
> field locally. with hash-id you will get shard-id (because each shard has
> the hash-range), and with shard, you will find the leader, and you will
> find on which node the leader is (cluster-status) and send the request
> directly to the leader and be certain that it won't be redirected again
> (less network hops).
>
>
> > //pseudo code
> >
> > $array_count = $count($active_nodes)
> >
> > $url_target = rand(0, $array_count);
> >
> > // creat a function to pull the url   somthing like
> >
> >
> > $url = get_solr_url($url_target);
> >
> > I have test sever on my bench. I'll spin up a 5 node cluster today, get
> my
> > app cluster aware and then get into some Solr indexes with Vi and totally
> > screw with some shards.
> >
> > If I am correct I will post again.
> >
> > Best,
> >
> > GW
> >
> > On 15 December 2016 at 12:34, Shawn Heisey  wrote:
> >
> > > On 12/14/2016 7:36 AM, GW wrote:
> > > > I understand accessing solr directly. I'm doing REST calls to a
> single
> > > > machine.
> > > >
> > > > If I have a cluster of five servers and say three Apache servers, I
> can
> > > > round robin the REST calls to all five in the cluster?
> > > >
> > > > I guess I'm going to find out. :-)  If so I might be better off just
> > > > running Apache on all my solr instances.
> > >
> > > If you're running SolrCloud (which uses zookeeper) then sending
> multiple
> > > query requests to any node will load balance the requests across all
> > > replicas for the collection.  This is an inherent feature of SolrCloud.
> > > Indexing requests will be forwarded to the correct place.
> > >
> > > The node you're sending to is a potential single point of failure,
> which
> > > you can eliminate by putting a load balancer in front of Solr that
> > > connects to at least two of the nodes.  As I just mentioned, SolrCloud
> > > will do further load balancing to all nodes which are capable of
> serving
> > > the requests.
> > >
> > > I use haproxy for a load balancer in front of Solr.  I'm not running in
> > > Cloud mode, but a load balancer would also work for Cloud, and is
> > > required for high availability when your client only connects to one
> > > server and isn't cloud aware.
> > >
> > > http://www.haproxy.org/
> > >
> > > Solr includes a cloud-aware Java client that talks to zookeeper and
> > > always knows the state of the cloud.  This eliminates the requirement
> > > for a load balancer, but using that client would require that you write
> > > your website in Java.
> > >
> > > The PHP clients are third-party software, and 

Re: Has anyone used linode.com to run Solr | ??Best way to deliver PHP/Apache clients with Solr question

2016-12-18 Thread Dorian Hoxha
On Sun, Dec 18, 2016 at 3:48 PM, GW  wrote:

> Yeah,
>
>
> I'll look at the proxy you suggested shortly.
>
> I've discovered that the idea of making a zookeeper aware app is pointless
> when scripting REST calls right after I installed libzookeeper.
>
> Zookeeper is there to provide the zookeeping for Solr: End of story. Me
> thinks
>
> I believe what really has to happen is: connect to the admin API to get
> status
>
> /solr/admin/collections?action=CLUSTERSTATUS
>
> I think it is more sensible to make a cluster aware app.
>
> 1 name="shards"> name="range">8000-7fffactive name="replicas"> name="core">FrogMerchants_shard1_replica1
> http://10.128.0.2:8983/solr name="node_name">10.128.0.2:8983_solr name="state">active name="leader">true
>
> I can get an array of nodes that have a state of active. So if I have 7
> nodes that are state = active, I will have those in an array. Then I can
> use rand() funtion with an array count to select a node/url to post a json
> string. It would eliminate the need for a load balancer. I think.
>
If you send to random(node), there is high chance(increasing with number of
nodes/shards) that node won't have the leader, so that node will also
redirect it to the leader. What you can do, is compute the hash of the 'id'
field locally. with hash-id you will get shard-id (because each shard has
the hash-range), and with shard, you will find the leader, and you will
find on which node the leader is (cluster-status) and send the request
directly to the leader and be certain that it won't be redirected again
(less network hops).


> //pseudo code
>
> $array_count = $count($active_nodes)
>
> $url_target = rand(0, $array_count);
>
> // creat a function to pull the url   somthing like
>
>
> $url = get_solr_url($url_target);
>
> I have test sever on my bench. I'll spin up a 5 node cluster today, get my
> app cluster aware and then get into some Solr indexes with Vi and totally
> screw with some shards.
>
> If I am correct I will post again.
>
> Best,
>
> GW
>
> On 15 December 2016 at 12:34, Shawn Heisey  wrote:
>
> > On 12/14/2016 7:36 AM, GW wrote:
> > > I understand accessing solr directly. I'm doing REST calls to a single
> > > machine.
> > >
> > > If I have a cluster of five servers and say three Apache servers, I can
> > > round robin the REST calls to all five in the cluster?
> > >
> > > I guess I'm going to find out. :-)  If so I might be better off just
> > > running Apache on all my solr instances.
> >
> > If you're running SolrCloud (which uses zookeeper) then sending multiple
> > query requests to any node will load balance the requests across all
> > replicas for the collection.  This is an inherent feature of SolrCloud.
> > Indexing requests will be forwarded to the correct place.
> >
> > The node you're sending to is a potential single point of failure, which
> > you can eliminate by putting a load balancer in front of Solr that
> > connects to at least two of the nodes.  As I just mentioned, SolrCloud
> > will do further load balancing to all nodes which are capable of serving
> > the requests.
> >
> > I use haproxy for a load balancer in front of Solr.  I'm not running in
> > Cloud mode, but a load balancer would also work for Cloud, and is
> > required for high availability when your client only connects to one
> > server and isn't cloud aware.
> >
> > http://www.haproxy.org/
> >
> > Solr includes a cloud-aware Java client that talks to zookeeper and
> > always knows the state of the cloud.  This eliminates the requirement
> > for a load balancer, but using that client would require that you write
> > your website in Java.
> >
> > The PHP clients are third-party software, and as far as I know, are not
> > cloud-aware.
> >
> > https://wiki.apache.org/solr/IntegratingSolr#PHP
> >
> > Some advantages of using a Solr client over creating HTTP requests
> > yourself:  The code is easier to write, and to read.  You generally do
> > not need to worry about making sure that your requests are properly
> > escaped for URLs, XML, JSON, etc.  The response to the requests is
> > usually translated into data structures appropriate to the language --
> > your program probably doesn't need to know how to parse XML or JSON.
> >
> > Thanks,
> > Shawn
> >
> >
>


Re: Has anyone used linode.com to run Solr | ??Best way to deliver PHP/Apache clients with Solr question

2016-12-18 Thread GW
Yeah,


I'll look at the proxy you suggested shortly.

I've discovered that the idea of making a zookeeper aware app is pointless
when scripting REST calls right after I installed libzookeeper.

Zookeeper is there to provide the zookeeping for Solr: End of story. Me
thinks

I believe what really has to happen is: connect to the admin API to get
status

/solr/admin/collections?action=CLUSTERSTATUS

I think it is more sensible to make a cluster aware app.

18000-7fffactiveFrogMerchants_shard1_replica1
http://10.128.0.2:8983/solr10.128.0.2:8983_solractivetrue

I can get an array of nodes that have a state of active. So if I have 7
nodes that are state = active, I will have those in an array. Then I can
use rand() funtion with an array count to select a node/url to post a json
string. It would eliminate the need for a load balancer. I think.

//pseudo code

$array_count = $count($active_nodes)

$url_target = rand(0, $array_count);

// creat a function to pull the url   somthing like


$url = get_solr_url($url_target);

I have test sever on my bench. I'll spin up a 5 node cluster today, get my
app cluster aware and then get into some Solr indexes with Vi and totally
screw with some shards.

If I am correct I will post again.

Best,

GW

On 15 December 2016 at 12:34, Shawn Heisey  wrote:

> On 12/14/2016 7:36 AM, GW wrote:
> > I understand accessing solr directly. I'm doing REST calls to a single
> > machine.
> >
> > If I have a cluster of five servers and say three Apache servers, I can
> > round robin the REST calls to all five in the cluster?
> >
> > I guess I'm going to find out. :-)  If so I might be better off just
> > running Apache on all my solr instances.
>
> If you're running SolrCloud (which uses zookeeper) then sending multiple
> query requests to any node will load balance the requests across all
> replicas for the collection.  This is an inherent feature of SolrCloud.
> Indexing requests will be forwarded to the correct place.
>
> The node you're sending to is a potential single point of failure, which
> you can eliminate by putting a load balancer in front of Solr that
> connects to at least two of the nodes.  As I just mentioned, SolrCloud
> will do further load balancing to all nodes which are capable of serving
> the requests.
>
> I use haproxy for a load balancer in front of Solr.  I'm not running in
> Cloud mode, but a load balancer would also work for Cloud, and is
> required for high availability when your client only connects to one
> server and isn't cloud aware.
>
> http://www.haproxy.org/
>
> Solr includes a cloud-aware Java client that talks to zookeeper and
> always knows the state of the cloud.  This eliminates the requirement
> for a load balancer, but using that client would require that you write
> your website in Java.
>
> The PHP clients are third-party software, and as far as I know, are not
> cloud-aware.
>
> https://wiki.apache.org/solr/IntegratingSolr#PHP
>
> Some advantages of using a Solr client over creating HTTP requests
> yourself:  The code is easier to write, and to read.  You generally do
> not need to worry about making sure that your requests are properly
> escaped for URLs, XML, JSON, etc.  The response to the requests is
> usually translated into data structures appropriate to the language --
> your program probably doesn't need to know how to parse XML or JSON.
>
> Thanks,
> Shawn
>
>


Re: Has anyone used linode.com to run Solr | ??Best way to deliver PHP/Apache clients with Solr question

2016-12-15 Thread Shawn Heisey
On 12/14/2016 7:36 AM, GW wrote:
> I understand accessing solr directly. I'm doing REST calls to a single
> machine.
>
> If I have a cluster of five servers and say three Apache servers, I can
> round robin the REST calls to all five in the cluster?
>
> I guess I'm going to find out. :-)  If so I might be better off just
> running Apache on all my solr instances.

If you're running SolrCloud (which uses zookeeper) then sending multiple
query requests to any node will load balance the requests across all
replicas for the collection.  This is an inherent feature of SolrCloud. 
Indexing requests will be forwarded to the correct place.

The node you're sending to is a potential single point of failure, which
you can eliminate by putting a load balancer in front of Solr that
connects to at least two of the nodes.  As I just mentioned, SolrCloud
will do further load balancing to all nodes which are capable of serving
the requests.

I use haproxy for a load balancer in front of Solr.  I'm not running in
Cloud mode, but a load balancer would also work for Cloud, and is
required for high availability when your client only connects to one
server and isn't cloud aware.

http://www.haproxy.org/

Solr includes a cloud-aware Java client that talks to zookeeper and
always knows the state of the cloud.  This eliminates the requirement
for a load balancer, but using that client would require that you write
your website in Java.

The PHP clients are third-party software, and as far as I know, are not
cloud-aware.

https://wiki.apache.org/solr/IntegratingSolr#PHP

Some advantages of using a Solr client over creating HTTP requests
yourself:  The code is easier to write, and to read.  You generally do
not need to worry about making sure that your requests are properly
escaped for URLs, XML, JSON, etc.  The response to the requests is
usually translated into data structures appropriate to the language --
your program probably doesn't need to know how to parse XML or JSON.

Thanks,
Shawn



Re: Has anyone used linode.com to run Solr | ??Best way to deliver PHP/Apache clients with Solr question

2016-12-15 Thread GW
Thanks Tom,

It looks like there is an PHP extension on Git. seems like a phpized C lib
to create a Zend module to work with ZK. No mention of solr but I'm
guessing I can poll the ensemble for pretty much anything ZK.

Thanks for the direction! A ZK aware app is the way I need to go. I'll give
it go in the next few days.

Best,

GW





On 15 December 2016 at 09:52, Tom Evans  wrote:

> On Thu, Dec 15, 2016 at 12:37 PM, GW  wrote:
> > While my client is all PHP it does not use a solr client. I wanted to
> stay
> > with he latest Solt Cloud and the PHP clients all seemed to have some
> kind
> > of issue being unaware of newer Solr Cloud versions. The client makes
> pure
> > REST calls with Curl. It is stateful through local storage. There is no
> > persistent connection. There are no cookies and PHP work is not sticky so
> > it is designed for round robin on both the internal network.
> >
> > I'm thinking we have a different idea of persistent. To me something like
> > MySQL can be persistent, ie a fifo queue for requests. The stack can be
> > always on/connected on something like a heap storage.
> >
> > I never thought about the impact of a solr node crashing with PHP on top.
> > Many thanks!
> >
> > Was thinking of running a conga line (Ricci & Luci projects) and shutting
> > down and replacing failed nodes. Never done this with Solr. I don't see
> any
> > reasons why it would not work.
> >
> > ** When you say an array of connections per host. It would still require
> an
> > internal DNS because hosts files don't round robin. perhaps this is
> handled
> > in the Python client??
>
>
> The best Solr clients will take the URIs of the Zookeeper servers;
> they do not make queries via Zookeeper, but will read the current
> cluster status from zookeeper in order to determine which solr node to
> actually connect to, taking in to account what nodes are alive, and
> the state of particular shards.
>
> SolrJ (Java) will do this, as will pysolr (python), I'm not aware of a
> PHP client that is ZK aware.
>
> If you don't have a ZK aware client, there are several options:
>
> 1) Make your favourite client ZK aware, like in [1]
> 2) Use round robin DNS to distribute requests amongst the cluster.
> 3) Use a hardware or software load balancer in front of the cluster.
> 4) Use shared state to store the names of active nodes*
>
> All apart from 1) have significant downsides:
>
> 2) Has no concept of a node being down. Down nodes should not cause
> query failures, the requests should go elsewhere in the cluster.
> Requires updating DNS to add or remove nodes.
> 3) Can detect "down" nodes. Has no idea about the state of the
> cluster/shards (usually).
> 4) Basically duplicates what ZooKeeper does, but less effectively -
> doesn't know cluster state, down nodes, nodes that are up but with
> unhealthy replicas...
>
> >
> > You have given me some good clarification. I think lol. I know I can spin
> > out WWW servers based on load. I'm not sure how shit will fly spinning up
> > additional solr nodes. I'm not sure what happens if you spin up an empty
> > solr node and what will happen with replication, shards and load cost of
> > spinning an instance. I'm facing some experimentation me thinks. This
> will
> > be a manual process at first, for sure
> >
> > I guess I could put the solr connect requests in my clients into a try
> > loop, looking for successful connections by name before any action.
>
> In SolrCloud mode, you can spin up/shut down nodes as you like.
> Depending on how you have configured your collections, new replicas
> may be automatically created on the new node, or the node will simply
> become part of the cluster but empty, ready for you to assign new
> replicas to it using the Collections API.
>
> You can also use what are called "snitches" to define rules for how
> you want replicas/shards allocated amongst the nodes, eg to avoid
> placing all the replicas for a shard in the same rack.
>
> Cheers
>
> Tom
>
> [1] https://github.com/django-haystack/pysolr/commit/
> 366f14d75d2de33884334ff7d00f6b19e04e8bbf
>


Re: Has anyone used linode.com to run Solr | ??Best way to deliver PHP/Apache clients with Solr question

2016-12-15 Thread Tom Evans
On Thu, Dec 15, 2016 at 12:37 PM, GW  wrote:
> While my client is all PHP it does not use a solr client. I wanted to stay
> with he latest Solt Cloud and the PHP clients all seemed to have some kind
> of issue being unaware of newer Solr Cloud versions. The client makes pure
> REST calls with Curl. It is stateful through local storage. There is no
> persistent connection. There are no cookies and PHP work is not sticky so
> it is designed for round robin on both the internal network.
>
> I'm thinking we have a different idea of persistent. To me something like
> MySQL can be persistent, ie a fifo queue for requests. The stack can be
> always on/connected on something like a heap storage.
>
> I never thought about the impact of a solr node crashing with PHP on top.
> Many thanks!
>
> Was thinking of running a conga line (Ricci & Luci projects) and shutting
> down and replacing failed nodes. Never done this with Solr. I don't see any
> reasons why it would not work.
>
> ** When you say an array of connections per host. It would still require an
> internal DNS because hosts files don't round robin. perhaps this is handled
> in the Python client??


The best Solr clients will take the URIs of the Zookeeper servers;
they do not make queries via Zookeeper, but will read the current
cluster status from zookeeper in order to determine which solr node to
actually connect to, taking in to account what nodes are alive, and
the state of particular shards.

SolrJ (Java) will do this, as will pysolr (python), I'm not aware of a
PHP client that is ZK aware.

If you don't have a ZK aware client, there are several options:

1) Make your favourite client ZK aware, like in [1]
2) Use round robin DNS to distribute requests amongst the cluster.
3) Use a hardware or software load balancer in front of the cluster.
4) Use shared state to store the names of active nodes*

All apart from 1) have significant downsides:

2) Has no concept of a node being down. Down nodes should not cause
query failures, the requests should go elsewhere in the cluster.
Requires updating DNS to add or remove nodes.
3) Can detect "down" nodes. Has no idea about the state of the
cluster/shards (usually).
4) Basically duplicates what ZooKeeper does, but less effectively -
doesn't know cluster state, down nodes, nodes that are up but with
unhealthy replicas...

>
> You have given me some good clarification. I think lol. I know I can spin
> out WWW servers based on load. I'm not sure how shit will fly spinning up
> additional solr nodes. I'm not sure what happens if you spin up an empty
> solr node and what will happen with replication, shards and load cost of
> spinning an instance. I'm facing some experimentation me thinks. This will
> be a manual process at first, for sure
>
> I guess I could put the solr connect requests in my clients into a try
> loop, looking for successful connections by name before any action.

In SolrCloud mode, you can spin up/shut down nodes as you like.
Depending on how you have configured your collections, new replicas
may be automatically created on the new node, or the node will simply
become part of the cluster but empty, ready for you to assign new
replicas to it using the Collections API.

You can also use what are called "snitches" to define rules for how
you want replicas/shards allocated amongst the nodes, eg to avoid
placing all the replicas for a shard in the same rack.

Cheers

Tom

[1] 
https://github.com/django-haystack/pysolr/commit/366f14d75d2de33884334ff7d00f6b19e04e8bbf


Re: Has anyone used linode.com to run Solr | ??Best way to deliver PHP/Apache clients with Solr question

2016-12-15 Thread GW
While my client is all PHP it does not use a solr client. I wanted to stay
with he latest Solt Cloud and the PHP clients all seemed to have some kind
of issue being unaware of newer Solr Cloud versions. The client makes pure
REST calls with Curl. It is stateful through local storage. There is no
persistent connection. There are no cookies and PHP work is not sticky so
it is designed for round robin on both the internal network.

I'm thinking we have a different idea of persistent. To me something like
MySQL can be persistent, ie a fifo queue for requests. The stack can be
always on/connected on something like a heap storage.

I never thought about the impact of a solr node crashing with PHP on top.
Many thanks!

Was thinking of running a conga line (Ricci & Luci projects) and shutting
down and replacing failed nodes. Never done this with Solr. I don't see any
reasons why it would not work.

** When you say an array of connections per host. It would still require an
internal DNS because hosts files don't round robin. perhaps this is handled
in the Python client??

You have given me some good clarification. I think lol. I know I can spin
out WWW servers based on load. I'm not sure how shit will fly spinning up
additional solr nodes. I'm not sure what happens if you spin up an empty
solr node and what will happen with replication, shards and load cost of
spinning an instance. I'm facing some experimentation me thinks. This will
be a manual process at first, for sure

I guess I could put the solr connect requests in my clients into a try
loop, looking for successful connections by name before any action.

Many thanks,

GW




On 15 December 2016 at 04:46, Dorian Hoxha  wrote:

> See replies inline:
>
> On Wed, Dec 14, 2016 at 3:36 PM, GW  wrote:
>
> > Thanks,
> >
> > I understand accessing solr directly. I'm doing REST calls to a single
> > machine.
> >
> > If I have a cluster of five servers and say three Apache servers, I can
> > round robin the REST calls to all five in the cluster?
> >
> I don't know about php, but it would be better to have "persistent
> connections" or something to the solr servers. In python for example this
> is done automatically. It would be better if each php-server has a
> different order of an array of [list of solr ips]. This way each box will
> contact a ~different solr instance, and will have better chance of not
> creating too may new connections (since the connection cache is
> per-url/ip).
>
> >
> > I guess I'm going to find out. :-)  If so I might be better off just
> > running Apache on all my solr instances.
> >
> I've done that before (though with es, but it's ~same). And just contacting
> the localhost solr. The problem with that, is that if the solr on the
> current host fails, your php won't work. So best in this scenario is to
> have an array of hosts, but the first being the local solr.
>
> >
> >
> >
> >
> >
> > On 14 December 2016 at 07:08, Dorian Hoxha 
> wrote:
> >
> > > See replies inline:
> > >
> > > On Wed, Dec 14, 2016 at 11:16 AM, GW  wrote:
> > >
> > > > Hello folks,
> > > >
> > > > I'm about to set up a Web service I created with PHP/Apache <--> Solr
> > > Cloud
> > > >
> > > > I'm hoping to index a bazillion documents.
> > > >
> > > ok , how many inserts/second ?
> > >
> > > >
> > > > I'm thinking about using Linode.com because the pricing looks great.
> > Any
> > > > opinions??
> > > >
> > > Pricing is 'ok'. For bazillion documents, I would skip vps and go
> > straight
> > > dedicated. Check out ovh.com / online.net etc etc
> > >
> > > >
> > > > I envision using an Apache/PHP round robin in front of a solr cloud
> > > >
> > > > My thoughts are that I send my requests to the Solr instances on the
> > > > Zookeeper Ensemble. Am I missing something?
> > > >
> > > You contact with solr directly, don't have to connect to zookeeper for
> > > loadbalancing.
> > >
> > > >
> > > > What can I say.. I'm software oriented and a little hardware
> > challenged.
> > > >
> > > > Thanks in advance,
> > > >
> > > > GW
> > > >
> > >
> >
>


Re: Has anyone used linode.com to run Solr | ??Best way to deliver PHP/Apache clients with Solr question

2016-12-15 Thread Dorian Hoxha
See replies inline:

On Wed, Dec 14, 2016 at 3:36 PM, GW  wrote:

> Thanks,
>
> I understand accessing solr directly. I'm doing REST calls to a single
> machine.
>
> If I have a cluster of five servers and say three Apache servers, I can
> round robin the REST calls to all five in the cluster?
>
I don't know about php, but it would be better to have "persistent
connections" or something to the solr servers. In python for example this
is done automatically. It would be better if each php-server has a
different order of an array of [list of solr ips]. This way each box will
contact a ~different solr instance, and will have better chance of not
creating too may new connections (since the connection cache is per-url/ip).

>
> I guess I'm going to find out. :-)  If so I might be better off just
> running Apache on all my solr instances.
>
I've done that before (though with es, but it's ~same). And just contacting
the localhost solr. The problem with that, is that if the solr on the
current host fails, your php won't work. So best in this scenario is to
have an array of hosts, but the first being the local solr.

>
>
>
>
>
> On 14 December 2016 at 07:08, Dorian Hoxha  wrote:
>
> > See replies inline:
> >
> > On Wed, Dec 14, 2016 at 11:16 AM, GW  wrote:
> >
> > > Hello folks,
> > >
> > > I'm about to set up a Web service I created with PHP/Apache <--> Solr
> > Cloud
> > >
> > > I'm hoping to index a bazillion documents.
> > >
> > ok , how many inserts/second ?
> >
> > >
> > > I'm thinking about using Linode.com because the pricing looks great.
> Any
> > > opinions??
> > >
> > Pricing is 'ok'. For bazillion documents, I would skip vps and go
> straight
> > dedicated. Check out ovh.com / online.net etc etc
> >
> > >
> > > I envision using an Apache/PHP round robin in front of a solr cloud
> > >
> > > My thoughts are that I send my requests to the Solr instances on the
> > > Zookeeper Ensemble. Am I missing something?
> > >
> > You contact with solr directly, don't have to connect to zookeeper for
> > loadbalancing.
> >
> > >
> > > What can I say.. I'm software oriented and a little hardware
> challenged.
> > >
> > > Thanks in advance,
> > >
> > > GW
> > >
> >
>


Re: Has anyone used linode.com to run Solr | ??Best way to deliver PHP/Apache clients with Solr question

2016-12-14 Thread GW
Thanks,

I understand accessing solr directly. I'm doing REST calls to a single
machine.

If I have a cluster of five servers and say three Apache servers, I can
round robin the REST calls to all five in the cluster?

I guess I'm going to find out. :-)  If so I might be better off just
running Apache on all my solr instances.





On 14 December 2016 at 07:08, Dorian Hoxha  wrote:

> See replies inline:
>
> On Wed, Dec 14, 2016 at 11:16 AM, GW  wrote:
>
> > Hello folks,
> >
> > I'm about to set up a Web service I created with PHP/Apache <--> Solr
> Cloud
> >
> > I'm hoping to index a bazillion documents.
> >
> ok , how many inserts/second ?
>
> >
> > I'm thinking about using Linode.com because the pricing looks great. Any
> > opinions??
> >
> Pricing is 'ok'. For bazillion documents, I would skip vps and go straight
> dedicated. Check out ovh.com / online.net etc etc
>
> >
> > I envision using an Apache/PHP round robin in front of a solr cloud
> >
> > My thoughts are that I send my requests to the Solr instances on the
> > Zookeeper Ensemble. Am I missing something?
> >
> You contact with solr directly, don't have to connect to zookeeper for
> loadbalancing.
>
> >
> > What can I say.. I'm software oriented and a little hardware challenged.
> >
> > Thanks in advance,
> >
> > GW
> >
>


Re: Has anyone used linode.com to run Solr | ??Best way to deliver PHP/Apache clients with Solr question

2016-12-14 Thread Dorian Hoxha
See replies inline:

On Wed, Dec 14, 2016 at 11:16 AM, GW  wrote:

> Hello folks,
>
> I'm about to set up a Web service I created with PHP/Apache <--> Solr Cloud
>
> I'm hoping to index a bazillion documents.
>
ok , how many inserts/second ?

>
> I'm thinking about using Linode.com because the pricing looks great. Any
> opinions??
>
Pricing is 'ok'. For bazillion documents, I would skip vps and go straight
dedicated. Check out ovh.com / online.net etc etc

>
> I envision using an Apache/PHP round robin in front of a solr cloud
>
> My thoughts are that I send my requests to the Solr instances on the
> Zookeeper Ensemble. Am I missing something?
>
You contact with solr directly, don't have to connect to zookeeper for
loadbalancing.

>
> What can I say.. I'm software oriented and a little hardware challenged.
>
> Thanks in advance,
>
> GW
>


Has anyone used linode.com to run Solr | ??Best way to deliver PHP/Apache clients with Solr question

2016-12-14 Thread GW
Hello folks,

I'm about to set up a Web service I created with PHP/Apache <--> Solr Cloud

I'm hoping to index a bazillion documents.

I'm thinking about using Linode.com because the pricing looks great. Any
opinions??

I envision using an Apache/PHP round robin in front of a solr cloud

My thoughts are that I send my requests to the Solr instances on the
Zookeeper Ensemble. Am I missing something?

What can I say.. I'm software oriented and a little hardware challenged.

Thanks in advance,

GW