Option C: Deploy your web servers with a list of hosts to connect to.
Have the clients fail over when a riak node goes down. Lower latency
without sacrificing availability. If you're using protobufs, this may
not be as big of an issue.
--Kyle
On 10/04/2011 02:04 PM, O'Brien-Strain, Eamonn wrote:
I am contemplating two different architectures for deploying Riak nodes and web
servers.
Option A: Riak nodes are in their own cluster of dedicated machines behind a
load balancer. Web servers talk to the Riak nodes via the load balancer. (See
diagram http://eamonn.org/i/riak-arch-A.png )
Option B: Each web server machine also has a Riak node, and there are also some
Riak-only machines. Each web server only talks to its own localhost Riak node.
(See diagram http://eamonn.org/i/riak-arch-B.png )
All machines will deployed as elastic cloud instances. I will want to spin up
and spin down instances, particularly the web servers, as demand varies. Both
load balancers are non-sticky. Web servers are currently talking to Riak via
HTTP (though might change that to protocol buffers in the future). Currently
Riak is configured with the default options.
Here is my thinking of the comparative advantages:
Option A:
- Better for security, because can lock down the Riak load balancer to only
open a single port and only for connections from the web servers.
- Less churn for Riak of nodes entering and leaving the Riak cluster (as web
servers spin up and down)
- More flexibility in scaling storage and web tiers independently of each
other
Option B:
- Faster localhost connection from web server to Riak
I think availability is similar for the two options.
The web server response time is the primary metric I want to optimize. Most
web server requests will cause several requests to Riak.
What other factors should I take into account? What measurements could I make
to help me decide between the architectures? Are there other architectures I
should consider? Should I add memcached? Does anyone have any experiences they
could share in deploying such systems?
Thanks.
__
Eamonn
_______________________________________________
riak-users mailing list
riak-users@lists.basho.com
http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com
_______________________________________________
riak-users mailing list
riak-users@lists.basho.com
http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com