Re: CAS-SSO , Memcached-Repcached TGT replication issue
Hi, I am trying to setup repcached on CentOS for memcached 1.4.15 but it is giving segmentation fault. May be something in my setup is not configured correctly. Can you help me with the steps you did to set it up? Also which OS version are you running? Regards Pratibha On Thursday, 5 November 2015 01:07:14 UTC+8, Said Ramli wrote: > > Hello , > > I'm running into a new issue with HA jasig Cas configuration : > > CAS 4.0.6 > > cas-server-integration-memcached 4.0.6 > memecached : 1.4.13 > repcached : 2.3.1 > > I have 2 memcached instances with repcached installation , when I test the > replication using telnet command line it looks like good in 2 directions , > but when I try to make everything up by connecting me to my CAS server , it > creates and add TGT ticket into one server succesfully , BUT the > replication to the other server is not performed !!! > > I still retrieve my TGT ticket in one server and I can't in the other one. > > Any help pleaze , I m blocked ! > > Thx for advance. > -- --- You received this message because you are subscribed to the Google Groups "memcached" group. To unsubscribe from this group and stop receiving emails from it, send an email to memcached+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/memcached/287b0dd3-ec47-4957-9f76-ab9349053bc1%40googlegroups.com.
Re: Getting hostnames of servers where a particular key is stored when ketama hashing and replication is enabled
Hey, Additionally, I see no example usage of the memcached_server_by_key API to get the server where a key is stored. When I try to print out the value contained in it in my c code, I get dereferencing error: memcached_return_t rc2; memcached_instance_st* r_server; r_server = memcached_server_by_key(cache, key, (size_t) strlen(key), ); printf("%s \n", r_server->hostname()); This is the error: testsasl.c:67:28: error: dereferencing pointer to incomplete type ‘memcached_instance_st {aka struct memcached_instance_st}’ printf("%s \n", r_server->hostname()); ^ Also, I observe that the common.h file does not get added in the usual compilation path under /usr/include/lib/ Any help with this will be highly appreciated. Would I need to change libmemcached code to view this? Thanks and Regards, Om Kale On Thu, Aug 2, 2018 at 7:15 PM, Om Kale wrote: > Also, one more problem with the script approach, I would have to maintain > a separate connection to all memcached servers in the list. > How would I query them individually all the time when server list changes? > > > Thanks and Regards, > Om Kale > > > On Thu, Aug 2, 2018 at 5:21 PM, Om Kale wrote: > >> Yes. I do. >> Oh..ok. You are saying to do it the other way around, instead of passing >> a key and checking which server it belongs to, query every server in the >> list for a given key? I could that..not very optimal..but a workaround. >> Why I needed a way to get a server list where a particular key belongs >> to, it will be easy to check the state as well during run time. So >> whenever, some value fetch would give me an error, I could quickly use the >> key to get the servers its stored on and go on from there. >> >> Thanks and Regards, >> Om Kale >> >> On Thu, Aug 2, 2018 at 4:43 PM, dormando wrote: >> >>> You have the list of all servers right? Just query them individually? if >>> it's just for debugging it should take you a few minutes to code >>> soemthing >>> yup; you could even use a bash script. >>> >>> On Thu, 2 Aug 2018, Om Kale wrote: >>> >>> > The reason I am trying to do this is for better debugging. In case >>> something goes wrong in the system and I am unable to get the value stored >>> for a >>> > particular key, I can go ahead and use this functionality to >>> understand on which server that particular key is stored. >>> > Also, the second question about why the printing doesn't work. Is >>> there any other way to check on which server a key is stored. >>> > Additionally, when you say brute force, how would I be able to do it >>> on memcached server as I will not know on which server instance the key is >>> stored. >>> > Could you please elaborate on this? >>> > >>> > Thanks and Regards,Om Kale >>> > >>> > On Thu, Aug 2, 2018 at 4:27 PM, dormando wrote: >>> > Why are you trying to do this? That's generally a bad sign, the >>> > replication is for redundancy. if you're just trying to confirm >>> it works, >>> > you can do a brute force search for the key >>> > >>> > On Thu, 2 Aug 2018, Om Kale wrote: >>> > >>> > > Hi All,I have enabled replication (using --NUMBER_OF_REPLICAS) >>> and ketama hashing. >>> > > This means, I will have replicas of keys stored on different >>> servers memntioned in my server list. >>> > > >>> > > My question is, is there any way of retrieving the list of >>> servers where replicas of a particular key lie, in libmemcached? >>> > > Example: If I give a key, I need all the servers where >>> replicas of that key are stored. >>> > > >>> > > For getting one server where key is stored, I use this: >>> > > const struct memcached_instance_st *server;server = const >>> memcached_instance_st * memcached_server_by_key(memcached_st *ptr, const >>> > > char *key, size_t key_length, memcached_return_t *error); >>> > > >>> > > >>> > > However, I am unable to print the hostname from the returned >>> structure using server->hostname >>> > > >>> > > in a .c file. Can this info not be printed? >>> > > >>> > > Thanks and Regards, >>> > > >>> > > Om Kale >>> > > >&
Re: Getting hostnames of servers where a particular key is stored when ketama hashing and replication is enabled
Yes. I do. Oh..ok. You are saying to do it the other way around, instead of passing a key and checking which server it belongs to, query every server in the list for a given key? I could that..not very optimal..but a workaround. Why I needed a way to get a server list where a particular key belongs to, it will be easy to check the state as well during run time. So whenever, some value fetch would give me an error, I could quickly use the key to get the servers its stored on and go on from there. Thanks and Regards, Om Kale On Thu, Aug 2, 2018 at 4:43 PM, dormando wrote: > You have the list of all servers right? Just query them individually? if > it's just for debugging it should take you a few minutes to code soemthing > yup; you could even use a bash script. > > On Thu, 2 Aug 2018, Om Kale wrote: > > > The reason I am trying to do this is for better debugging. In case > something goes wrong in the system and I am unable to get the value stored > for a > > particular key, I can go ahead and use this functionality to understand > on which server that particular key is stored. > > Also, the second question about why the printing doesn't work. Is there > any other way to check on which server a key is stored. > > Additionally, when you say brute force, how would I be able to do it on > memcached server as I will not know on which server instance the key is > stored. > > Could you please elaborate on this? > > > > Thanks and Regards,Om Kale > > > > On Thu, Aug 2, 2018 at 4:27 PM, dormando wrote: > > Why are you trying to do this? That's generally a bad sign, the > > replication is for redundancy. if you're just trying to confirm it > works, > > you can do a brute force search for the key > > > > On Thu, 2 Aug 2018, Om Kale wrote: > > > > > Hi All,I have enabled replication (using --NUMBER_OF_REPLICAS) > and ketama hashing. > > > This means, I will have replicas of keys stored on different > servers memntioned in my server list. > > > > > > My question is, is there any way of retrieving the list of > servers where replicas of a particular key lie, in libmemcached? > > > Example: If I give a key, I need all the servers where replicas > of that key are stored. > > > > > > For getting one server where key is stored, I use this: > > > const struct memcached_instance_st *server;server = const > memcached_instance_st * memcached_server_by_key(memcached_st *ptr, const > > > char *key, size_t key_length, memcached_return_t *error); > > > > > > > > > However, I am unable to print the hostname from the returned > structure using server->hostname > > > > > > in a .c file. Can this info not be printed? > > > > > > Thanks and Regards, > > > > > > Om Kale > > > > > > > > > > > > -- > > > > > > --- > > > You received this message because you are subscribed to the Google > Groups "memcached" group. > > > To unsubscribe from this group and stop receiving emails from it, send > an email to memcached+unsubscr...@googlegroups.com. > > > For more options, visit https://groups.google.com/d/optout. > > > > > > > > > > -- > > > > --- > > You received this message because you are subscribed to the Google > Groups "memcached" group. > > To unsubscribe from this group and stop receiving emails from it, send > an email to memcached+unsubscr...@googlegroups.com. > > For more options, visit https://groups.google.com/d/optout. > > > > > > -- > > > > --- > > You received this message because you are subscribed to the Google > Groups "memcached" group. > > To unsubscribe from this group and stop receiving emails from it, send > an email to memcached+unsubscr...@googlegroups.com. > > For more options, visit https://groups.google.com/d/optout. > > > > > > -- > > --- > You received this message because you are subscribed to the Google Groups > "memcached" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to memcached+unsubscr...@googlegroups.com. > For more options, visit https://groups.google.com/d/optout. > -- --- You received this message because you are subscribed to the Google Groups "memcached" group. To unsubscribe from this group and stop receiving emails from it, send an email to memcached+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
Re: Getting hostnames of servers where a particular key is stored when ketama hashing and replication is enabled
You have the list of all servers right? Just query them individually? if it's just for debugging it should take you a few minutes to code soemthing yup; you could even use a bash script. On Thu, 2 Aug 2018, Om Kale wrote: > The reason I am trying to do this is for better debugging. In case something > goes wrong in the system and I am unable to get the value stored for a > particular key, I can go ahead and use this functionality to understand on > which server that particular key is stored. > Also, the second question about why the printing doesn't work. Is there any > other way to check on which server a key is stored. > Additionally, when you say brute force, how would I be able to do it on > memcached server as I will not know on which server instance the key is > stored. > Could you please elaborate on this? > > Thanks and Regards,Om Kale > > On Thu, Aug 2, 2018 at 4:27 PM, dormando wrote: > Why are you trying to do this? That's generally a bad sign, the > replication is for redundancy. if you're just trying to confirm it > works, > you can do a brute force search for the key > > On Thu, 2 Aug 2018, Om Kale wrote: > > > Hi All,I have enabled replication (using --NUMBER_OF_REPLICAS) and > ketama hashing. > > This means, I will have replicas of keys stored on different servers > memntioned in my server list. > > > > My question is, is there any way of retrieving the list of servers > where replicas of a particular key lie, in libmemcached? > > Example: If I give a key, I need all the servers where replicas of > that key are stored. > > > > For getting one server where key is stored, I use this: > > const struct memcached_instance_st *server;server = const > memcached_instance_st * memcached_server_by_key(memcached_st *ptr, const > > char *key, size_t key_length, memcached_return_t *error); > > > > > > However, I am unable to print the hostname from the returned > structure using server->hostname > > > > in a .c file. Can this info not be printed? > > > > Thanks and Regards, > > > > Om Kale > > > > > > > > -- > > > > --- > > You received this message because you are subscribed to the Google Groups > > "memcached" group. > > To unsubscribe from this group and stop receiving emails from it, send an > > email to memcached+unsubscr...@googlegroups.com. > > For more options, visit https://groups.google.com/d/optout. > > > > > > -- > > --- > You received this message because you are subscribed to the Google Groups > "memcached" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to memcached+unsubscr...@googlegroups.com. > For more options, visit https://groups.google.com/d/optout. > > > -- > > --- > You received this message because you are subscribed to the Google Groups > "memcached" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to memcached+unsubscr...@googlegroups.com. > For more options, visit https://groups.google.com/d/optout. > > -- --- You received this message because you are subscribed to the Google Groups "memcached" group. To unsubscribe from this group and stop receiving emails from it, send an email to memcached+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
Re: Getting hostnames of servers where a particular key is stored when ketama hashing and replication is enabled
The reason I am trying to do this is for better debugging. In case something goes wrong in the system and I am unable to get the value stored for a particular key, I can go ahead and use this functionality to understand on which server that particular key is stored. Also, the second question about why the printing doesn't work. Is there any other way to check on which server a key is stored. Additionally, when you say brute force, how would I be able to do it on memcached server as I will not know on which server instance the key is stored. Could you please elaborate on this? Thanks and Regards, Om Kale On Thu, Aug 2, 2018 at 4:27 PM, dormando wrote: > Why are you trying to do this? That's generally a bad sign, the > replication is for redundancy. if you're just trying to confirm it works, > you can do a brute force search for the key > > On Thu, 2 Aug 2018, Om Kale wrote: > > > Hi All,I have enabled replication (using --NUMBER_OF_REPLICAS) and > ketama hashing. > > This means, I will have replicas of keys stored on different servers > memntioned in my server list. > > > > My question is, is there any way of retrieving the list of servers where > replicas of a particular key lie, in libmemcached? > > Example: If I give a key, I need all the servers where replicas of that > key are stored. > > > > For getting one server where key is stored, I use this: > > const struct memcached_instance_st *server;server = const > memcached_instance_st * memcached_server_by_key(memcached_st *ptr, const > > char *key, size_t key_length, memcached_return_t *error); > > > > > > However, I am unable to print the hostname from the returned structure > using server->hostname > > > > in a .c file. Can this info not be printed? > > > > Thanks and Regards, > > > > Om Kale > > > > > > > > -- > > > > --- > > You received this message because you are subscribed to the Google > Groups "memcached" group. > > To unsubscribe from this group and stop receiving emails from it, send > an email to memcached+unsubscr...@googlegroups.com. > > For more options, visit https://groups.google.com/d/optout. > > > > > > -- > > --- > You received this message because you are subscribed to the Google Groups > "memcached" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to memcached+unsubscr...@googlegroups.com. > For more options, visit https://groups.google.com/d/optout. > -- --- You received this message because you are subscribed to the Google Groups "memcached" group. To unsubscribe from this group and stop receiving emails from it, send an email to memcached+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
Re: Getting hostnames of servers where a particular key is stored when ketama hashing and replication is enabled
Why are you trying to do this? That's generally a bad sign, the replication is for redundancy. if you're just trying to confirm it works, you can do a brute force search for the key On Thu, 2 Aug 2018, Om Kale wrote: > Hi All,I have enabled replication (using --NUMBER_OF_REPLICAS) and ketama > hashing. > This means, I will have replicas of keys stored on different servers > memntioned in my server list. > > My question is, is there any way of retrieving the list of servers where > replicas of a particular key lie, in libmemcached? > Example: If I give a key, I need all the servers where replicas of that key > are stored. > > For getting one server where key is stored, I use this: > const struct memcached_instance_st *server;server = const > memcached_instance_st * memcached_server_by_key(memcached_st *ptr, const > char *key, size_t key_length, memcached_return_t *error); > > > However, I am unable to print the hostname from the returned structure > using server->hostname > > in a .c file. Can this info not be printed? > > Thanks and Regards, > > Om Kale > > > > -- > > --- > You received this message because you are subscribed to the Google Groups > "memcached" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to memcached+unsubscr...@googlegroups.com. > For more options, visit https://groups.google.com/d/optout. > > -- --- You received this message because you are subscribed to the Google Groups "memcached" group. To unsubscribe from this group and stop receiving emails from it, send an email to memcached+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
Getting hostnames of servers where a particular key is stored when ketama hashing and replication is enabled
Hi All, I have enabled replication (using --NUMBER_OF_REPLICAS) and ketama hashing. This means, I will have replicas of keys stored on different servers memntioned in my server list. My question is, is there any way of retrieving the list of servers where replicas of a particular key lie, in libmemcached? Example: If I give a key, I need all the servers where replicas of that key are stored. For getting one server where key is stored, I use this: const struct memcached_instance_st *server; server = const memcached_instance_st * memcached_server_by_key(memcached_st <http://docs.libmemcached.org/memcached_create.html#memcached_st>* *ptr*, const char* *key*, size_t <http://docs.libmemcached.org/types.html#size_t> * key_length*, memcached_return_t <http://docs.libmemcached.org/libmemcached/memcached_return_t.html#memcached_return_t> * *error*); However, I am unable to print the hostname from the returned structure using server->hostnamein a .c file. Can this info not be printed?Thanks and Regards, Om Kale -- --- You received this message because you are subscribed to the Google Groups "memcached" group. To unsubscribe from this group and stop receiving emails from it, send an email to memcached+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
Re: CAS-SSO , Memcached-Repcached TGT replication issue
Hi , It was about a bug into net.spy.memcached.MemcachedNode.isActive() The first invocation of this method just after shutting down the memcached server , returns true !!! and then the operation crach ... Fixed by a workaround solution.. BR Le mercredi 4 novembre 2015 17:07:14 UTC, Said Ramli a écrit : > > Hello , > > I'm running into a new issue with HA jasig Cas configuration : > > CAS 4.0.6 > > cas-server-integration-memcached 4.0.6 > memecached : 1.4.13 > repcached : 2.3.1 > > I have 2 memcached instances with repcached installation , when I test the > replication using telnet command line it looks like good in 2 directions , > but when I try to make everything up by connecting me to my CAS server , it > creates and add TGT ticket into one server succesfully , BUT the > replication to the other server is not performed !!! > > I still retrieve my TGT ticket in one server and I can't in the other one. > > Any help pleaze , I m blocked ! > > Thx for advance. > -- --- You received this message because you are subscribed to the Google Groups "memcached" group. To unsubscribe from this group and stop receiving emails from it, send an email to memcached+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
CAS-SSO , Memcached-Repcached TGT replication issue
Hello , I'm running into a new issue with HA jasig Cas configuration : CAS 4.0.6 cas-server-integration-memcached 4.0.6 memecached : 1.4.13 repcached : 2.3.1 I have 2 memcached instances with repcached installation , when I test the replication using telnet command line it looks like good in 2 directions , but when I try to make everything up by connecting me to my CAS server , it creates and add TGT ticket into one server succesfully , BUT the replication to the other server is not performed !!! I still retrieve my TGT ticket in one server and I can't in the other one. Any help pleaze , I m blocked ! Thx for advance. -- --- You received this message because you are subscribed to the Google Groups "memcached" group. To unsubscribe from this group and stop receiving emails from it, send an email to memcached+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
Re: Which last version Memcached with replication
There is no replication in 1.4 branch. For the part of functionality that needed replication we switched to Redis (it has its own downsides: less stable perf, a bit more memory hungry for our configuration, harder to setup due tons of knobs but has replication) On Thursday, February 5, 2015 at 3:12:21 AM UTC-8, Aziz Jouhdi wrote: Hi everybody, I use Memcached 1.2.8 with Recached 2.2 on CentOS6.6. It's working, but I want to know if it exists a recent version. Or if I have repcache path with Memcached 1.4.22. Thx for your response King regards Aziz -- --- You received this message because you are subscribed to the Google Groups memcached group. To unsubscribe from this group and stop receiving emails from it, send an email to memcached+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
Which last version Memcached with replication
Hi everybody, I use Memcached 1.2.8 with Recached 2.2 on CentOS6.6. It's working, but I want to know if it exists a recent version. Or if I have repcache path with Memcached 1.4.22. Thx for your response King regards Aziz -- --- You received this message because you are subscribed to the Google Groups memcached group. To unsubscribe from this group and stop receiving emails from it, send an email to memcached+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
does repcached(replication of memcached) has Encryption function when replicate data
does repcached(replication of memcached) has Encryption function when replicate data thanks! -- --- You received this message because you are subscribed to the Google Groups memcached group. To unsubscribe from this group and stop receiving emails from it, send an email to memcached+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
Re: does repcached(replication of memcached) has Encryption function when replicate data
repcached is a separate project, so you should probably direct your queries about it to that project. however, it does not look like repcached does any encryption from my glance at the project page and a quick search of the code. ~Ryan On Mon, Oct 13, 2014 at 11:27 PM, Sean Lin seanlin...@gmail.com wrote: does repcached(replication of memcached) has Encryption function when replicate data thanks! -- --- You received this message because you are subscribed to the Google Groups memcached group. To unsubscribe from this group and stop receiving emails from it, send an email to memcached+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout. -- --- You received this message because you are subscribed to the Google Groups memcached group. To unsubscribe from this group and stop receiving emails from it, send an email to memcached+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
Re: Issue 339 in memcached: Segmentation fault - on replication - freebsd
Updates: Status: Invalid Comment #1 on issue 339 by dorma...@rydia.net: Segmentation fault - on replication - freebsd http://code.google.com/p/memcached/issues/detail?id=339 The replication patch is unsupported, sorry. -- You received this message because this project is configured to send all issue notifications to this address. You may adjust your notification preferences at: https://code.google.com/hosting/settings -- --- You received this message because you are subscribed to the Google Groups memcached group. To unsubscribe from this group and stop receiving emails from it, send an email to memcached+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
Issue 339 in memcached: Segmentation fault - on replication - freebsd
Status: New Owner: Labels: Type-Defect Priority-Medium New issue 339 by rabcz...@googlemail.com: Segmentation fault - on replication - freebsd http://code.google.com/p/memcached/issues/detail?id=339 What steps will reproduce the problem? 1. memcached -p 11211 -m 64 -x 127.0.0.1 -vvv -u nobody 2. memcached -p 11222 -m 64 -x 127.0.0.1 -v -u nobody What is the expected output? What do you see instead? On master: replication: start REP16 OK 16: going from conn_parse_cmd to conn_new_cmd 16: going from conn_new_cmd to conn_waiting 16: going from conn_waiting to conn_read 20 server listening (udp) 20 server listening (udp) 20 server listening (udp) 20 server listening (udp) 21 new auto-negotiating client connection 21: going from conn_new_cmd to conn_waiting 21: going from conn_waiting to conn_read 21: going from conn_read to conn_parse_cmd 21: Client using the ascii protocol 21 get 2e948d53e053a7a36ba02f2c7effaa0e NOT FOUND 2e948d53e053a7a36ba02f2c7effaa0e 21 END 21: going from conn_parse_cmd to conn_mwrite 21: going from conn_mwrite to conn_new_cmd 21: going from conn_new_cmd to conn_waiting 21: going from conn_waiting to conn_read 21: going from conn_read to conn_parse_cmd 21 set 2e948d53e053a7a36ba02f2c7effaa0e 3 180 1765 21: going from conn_parse_cmd to conn_nread NOT FOUND 2e948d53e053a7a36ba02f2c7effaa0e replication: alloc c=1 21 STORED 21: going from conn_nread to conn_write replication: pop 21: going from conn_write to conn_new_cmd 21: going from conn_new_cmd to conn_waiting 21: going from conn_waiting to conn_read Segmentation fault Slave is working well What version of the product are you using? On what operating system? libevent-1.4.14b_2, memcached-1.4.15 , freebsd 9.1-p6 , installed from ports. -- You received this message because this project is configured to send all issue notifications to this address. You may adjust your notification preferences at: https://code.google.com/hosting/settings -- --- You received this message because you are subscribed to the Google Groups memcached group. To unsubscribe from this group and stop receiving emails from it, send an email to memcached+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
Starting Memcache with Replication Port
I am starting Memcache in my Linux machine the following way , the second ip below is the replication port , configured with the help of repcached *memcached -d -u nobody -l 10.1.1.101 -p 11211 -m 64 -x 10.1.2.102 -v (Server 1)* and *memcached -d -u nobody -l 10.1.2.102 -p 11211 -m 64 -x 10.1.1.101 -v (Server 2)* But what i am observing is that , after some time hardly one hour , memcached is being automatically stopped on the replication port Please let me know , Is Memcache starting the above way leads to any issues ?? Thanks in advance .
CAS Value is not replicating in Memcache Master Master Replication
Hi , I am using Memcace server as active active (Master Master ) where two servers will be reciving requests , and applied repcached to those servers for replication What i observed is that the CAS Key stored by XMemcacheClient 1.3.5 is not being replicated among hese servers RIght now this is the way i am using CAS *cas(key, 0, value, casVal )* Please let me know do i need to do any changes for making the cas key replicated
Re: Is the term Replication and clustering are different with respect to 2 instances of Memcache for the same application .
On Friday, 12 October 2012 19:48:46 UTC+5:30, Kiran Kumar wrote: I have written a sample application as shown String location = localhost:11211,122.34.5:11211; MemcachedClientBuilder builder = new XMemcachedClientBuilder(AddrUtil.getAddressMap(location)); mcc.set(a, 0, Hello,xmemcached); Now i have memcache installed on both the IP addresses defined above . and i observed that if the local host server is down , data is fetched from the 2nd defined server . Please let me know , is there any difference between the Clustering and Replication here ?? *And i see a lot of buzz on using Repcached with memcached for replication purpose , please let me know if i am missing something regarding the difference between clustering and memcache ??* Being a newbie to memcache , Plese correct me if i am wrong . Thanks for reading .
Re: Behavior of Memcached Client during Replication Process
guy, why you don't study the source code? you sent a lot of messages with the same querstion! i will add your contact to spam with more messages like that read the wiki, read the source, understand the app, and stop asking the same message 100 times 2012/10/17 Kiran Kumar krn1...@gmail.com Hi , We are using Memcache in a different/wrong way , that is Memcache as a Complete Data Store itself . The setup of our Application is in such a way that , there are two Memcache servers (Server1 and Server2 )where both of them acting as active active (Master - Master ) each of them gets unique store of Data , and finally repcached is applied on top of these severs for providing replication . The Data is being replicated bethween these two servers and i observed that there is a small delay regarding the two servers being in sync with each other I am using Xmemcached 1.4 version as Memcache Client . I have these two questions with respect to the above set up of our Application . 1*. Is the XMemcached Client Smart enough to read Key from Server2 , incase it can't find that key in Sever 1 ( As i mentioned that there is a small delay till both the servers are in synch with each other )* 2. * Incase i configure my Memcache client to use KetamaMemcachedSessionLocator inside the code , will this be of any help with respect to the above scenario ??* Thank you very much . -- Roberto Spadim
Re: Behavior of Memcached Client during Replication Process
No, you will have to configure two client instances and read the key from both servers in your application. However, sometimes you will get a cache miss from one server and a cache hit from the other server. And you have no way of knowing if that happened because a value was written to one server, but the write didn't replicate yet, or if it was deleted from one server, and the delete didn't replicate yet. I'm still incredibly curious as to why your system writes data to both servers, you don't gain any performance whatsoever, you only create consistency problems for yourself, and you lock yourself into a setup where you can't utilize the linear scalability of memcached. /Henrik On Wed, Oct 17, 2012 at 6:24 PM, Kiran Kumar krn1...@gmail.com wrote: Hi , We are using Memcache in a different/wrong way , that is Memcache as a Complete Data Store itself . The setup of our Application is in such a way that , there are two Memcache servers (Server1 and Server2 )where both of them acting as active active (Master - Master ) each of them gets unique store of Data , and finally repcached is applied on top of these severs for providing replication . The Data is being replicated bethween these two servers and i observed that there is a small delay regarding the two servers being in sync with each other I am using Xmemcached 1.4 version as Memcache Client . I have these two questions with respect to the above set up of our Application . 1*. Is the XMemcached Client Smart enough to read Key from Server2 , incase it can't find that key in Sever 1 ( As i mentioned that there is a small delay till both the servers are in synch with each other )* 2. * Incase i configure my Memcache client to use KetamaMemcachedSessionLocator inside the code , will this be of any help with respect to the above scenario ??* Thank you very much .
Behavior of Memcached Client during Replication Process
Hi , We are using Memcache in a different/wrong way , that is Memcache as a Complete Data Store itself . The setup of our Application is in such a way that , there are two Memcache servers (Server1 and Server2 )where both of them acting as active active (Master - Master ) each of them gets unique store of Data , and finally repcached is applied on top of these severs for providing replication . The Data is being replicated bethween these two servers and i observed that there is a small delay regarding the two servers being in sync with each other I am using Xmemcached 1.4 version as Memcache Client . I have these two questions with respect to the above set up of our Application . 1*. Is the XMemcached Client Smart enough to read Key from Server2 , incase it can't find that key in Sever 1 ( As i mentioned that there is a small delay till both the servers are in synch with each other )* 2. * Incase i configure my Memcache client to use KetamaMemcachedSessionLocator inside the code , will this be of any help with respect to the above scenario ??* Thank you very much .
Re: Behavior of Memcached Client during Replication Process
On Wed, Oct 17, 2012 at 11:24 AM, Kiran Kumar krn1...@gmail.com wrote: Hi , We are using Memcache in a different/wrong way , that is Memcache as a Complete Data Store itself . The setup of our Application is in such a way that , there are two Memcache servers (Server1 and Server2 )where both of them acting as active active (Master - Master ) each of them gets unique store of Data , and finally repcached is applied on top of these severs for providing replication . The Data is being replicated bethween these two servers and i observed that there is a small delay regarding the two servers being in sync with each other I am using Xmemcached 1.4 version as Memcache Client . I have these two questions with respect to the above set up of our Application . 1. Is the XMemcached Client Smart enough to read Key from Server2 , incase it can't find that key in Sever 1 ( As i mentioned that there is a small delay till both the servers are in synch with each other ) 2. Incase i configure my Memcache client to use KetamaMemcachedSessionLocator inside the code , will this be of any help with respect to the above scenario ?? There should be options for how the client handles a server failure: http://code.google.com/p/xmemcached/wiki/FailureMode_StandbyNode Failure doesn't mean 'key doesn't exist', though, it means 'server connection fails'. -- Les Mikesell lesmikes...@gmail.com
Re: Behavior of Memcached Client during Replication Process
Les Mikesell , Thanks for the link , but unfortunately that is no where related to my question above . anyway once again , What i was asking is that as there is some delay in Data Replication , will the Memcache Client checks server2 also in case if it doesn't found in Server 1 . And does adding *KetamaMemcachedSessionLocator * to the code will help in anyway ?? On Wednesday, 17 October 2012 23:57:19 UTC+5:30, LesMikesell wrote: On Wed, Oct 17, 2012 at 11:24 AM, Kiran Kumar krn...@gmail.comjavascript: wrote: Hi , We are using Memcache in a different/wrong way , that is Memcache as a Complete Data Store itself . The setup of our Application is in such a way that , there are two Memcache servers (Server1 and Server2 )where both of them acting as active active (Master - Master ) each of them gets unique store of Data , and finally repcached is applied on top of these severs for providing replication . The Data is being replicated bethween these two servers and i observed that there is a small delay regarding the two servers being in sync with each other I am using Xmemcached 1.4 version as Memcache Client . I have these two questions with respect to the above set up of our Application . 1. Is the XMemcached Client Smart enough to read Key from Server2 , incase it can't find that key in Sever 1 ( As i mentioned that there is a small delay till both the servers are in synch with each other ) 2. Incase i configure my Memcache client to use KetamaMemcachedSessionLocator inside the code , will this be of any help with respect to the above scenario ?? There should be options for how the client handles a server failure: http://code.google.com/p/xmemcached/wiki/FailureMode_StandbyNode Failure doesn't mean 'key doesn't exist', though, it means 'server connection fails'. -- Les Mikesell lesmi...@gmail.com javascript:
Re: Behavior of Memcached Client during Replication Process
On Wed, Oct 17, 2012 at 1:56 PM, Kiran Kumar krn1...@gmail.com wrote: Les Mikesell , Thanks for the link , but unfortunately that is no where related to my question above . anyway once again , What i was asking is that as there is some delay in Data Replication , will the Memcache Client checks server2 also in case if it doesn't found in Server 1 . No, I can't imagine any circumstance where a memcache client would consider a key that doesn't exist in its expected location to be a server error. Why should it?I think the only way you can get that effect is to define only one server. All clients using the same hashing should store/retrieve it on the same target as the first choice anyway with the only reason to retry being if one is down - but that leaves you without a good way to handle the situation where the down instance is restarted and its cache is empty. -- Les Mikesell lesmikes...@gmail.com
Re: Is the term Replication and clustering are different with respect to 2 instances of Memcache for the same application .
The only cluster solution using memcache protocol (syncronous replication) that i remember is MySQL with ndb storage (there wa another but i dont remember the Name). the repcache solution is Nice too but its async... Maybe you should consider an abstraction layer that should be done by the memcache server and not the App since memcache solutions are Common (many guys like memcache protocol and implement it as a nosql interface is a easier solution than implement a new protocol) imho Em 12/10/2012 17:13, Kiran Kumar krn1...@gmail.com escreveu: Thanks a lot for answering all my questions . have a great time and thanks once again . On Saturday, 13 October 2012 01:37:07 UTC+5:30, LesMikesell wrote: On Fri, Oct 12, 2012 at 2:50 PM, Kiran Kumar krn...@gmail.com wrote: Thanks LesMikesell , I was searching for Data replication Option with xMemcahced library , what i found is that Data replication with xmemcache is possible by using repcached , please see this link https://groups.google.com/**forum/#!msg/xmemcached/** 4LezU1A7ldU/OpXD_uEHDgAJhttps://groups.google.com/forum/#!msg/xmemcached/4LezU1A7ldU/OpXD_uEHDgAJ and let me know is that dependable to go with ?? can i use repcache with Memcache on Java application . I don't know anything about repcached. It might work, but if you need reliable storage I'd recommend using something that is designed to provide reliable storage instead of just using something designed to be a cache even with multiple instances. -- Les Mikesell lesmi...@gmail.com
Is the term Replication and clustering are different with respect to 2 instances of Memcache for the same application .
I have written a sample application as shown String location = localhost:11211,122.34.5:11211; MemcachedClientBuilder builder = new XMemcachedClientBuilder(AddrUtil.getAddressMap(location)); mcc.set(a, 0, Hello,xmemcached); Now i have memcache installed on both the IP addresses defined above . and i observed that if the local host server is down , data is fetched from the 2nd defined server . Please let me know , is there any difference between the Clustering and Replication here ?? *And i see a lot of buzz on using Repcached with memcached for replication purpose , please let me know if i am missing something regarding the difference between clustering and memcache ??* Being a newbie to memcache , Plese correct me if i am wrong . Thanks for reading .
Re: Is the term Replication and clustering are different with respect to 2 instances of Memcache for the same application .
Since i know there is no cluster for memcached, cluster = syncronous replication, repcache is assync Em 12/10/2012 11:18, Kiran Kumar krn1...@gmail.com escreveu: I have written a sample application as shown String location = localhost:11211,122.34.5:11211; MemcachedClientBuilder builder = new XMemcachedClientBuilder(AddrUtil.getAddressMap(location)); mcc.set(a, 0, Hello,xmemcached); Now i have memcache installed on both the IP addresses defined above . and i observed that if the local host server is down , data is fetched from the 2nd defined server . Please let me know , is there any difference between the Clustering and Replication here ?? *And i see a lot of buzz on using Repcached with memcached for replication purpose , please let me know if i am missing something regarding the difference between clustering and memcache ??* Being a newbie to memcache , Plese correct me if i am wrong . Thanks for reading .
Re: Is the term Replication and clustering are different with respect to 2 instances of Memcache for the same application .
On Fri, Oct 12, 2012 at 9:18 AM, Kiran Kumar krn1...@gmail.com wrote: I have written a sample application as shown String location = localhost:11211,122.34.5:11211; MemcachedClientBuilder builder = new XMemcachedClientBuilder(AddrUtil.getAddressMap(location)); mcc.set(a, 0, Hello,xmemcached); Now i have memcache installed on both the IP addresses defined above . and i observed that if the local host server is down , data is fetched from the 2nd defined server . Please let me know , is there any difference between the Clustering and Replication here ?? And i see a lot of buzz on using Repcached with memcached for replication purpose , please let me know if i am missing something regarding the difference between clustering and memcache ?? Being a newbie to memcache , Plese correct me if i am wrong . First, note that memcache is intended to be used only as a cache in front of a slower but reliable data store where on a cache miss, the client will pull the data from the backend store and refresh it in the cache. Memcache itself does not do any replication, although you may see 3rd party tools that attempt to keep redundant copies of the data. What is supposed to happen is that if a client notices that one of the configured severs is down it will adjust its hashing to evenly spread the keys over the remaining set. Then the first cache miss will update it in the new still-working location so other than having a smaller capacity and possibly evicting things sooner, things continue normally. Alternatively you can use a hash computation that doesn't change and just always fail on the portion of the keyspace that the failing server handles until it comes back. With a large number of memcache servers, this results in a small percentage of requests always hitting the data store directly when a cache server is down, but avoids the chance of inconsistency if the clients notice the outage/recovery at slightly different times. -- Les Mikesell lesmikes...@gmail.com
Re: Is the term Replication and clustering are different with respect to 2 instances of Memcache for the same application .
Thanks rspadim , I am very much confused , when i checked the documentation of xmemcached , which i am using currrently , it defines an example of using 3 servers , please see the below link , my question if custering is not supported what purpose thise all these servers have ??. Please check the link http://code.google.com/p/xmemcached/wiki/User_Guide#Client_distribution On Friday, 12 October 2012 20:33:16 UTC+5:30, rspadim wrote: Since i know there is no cluster for memcached, cluster = syncronous replication, repcache is assync Em 12/10/2012 11:18, Kiran Kumar krn...@gmail.com javascript: escreveu: I have written a sample application as shown String location = localhost:11211,122.34.5:11211; MemcachedClientBuilder builder = new XMemcachedClientBuilder(AddrUtil.getAddressMap(location)); mcc.set(a, 0, Hello,xmemcached); Now i have memcache installed on both the IP addresses defined above . and i observed that if the local host server is down , data is fetched from the 2nd defined server . Please let me know , is there any difference between the Clustering and Replication here ?? *And i see a lot of buzz on using Repcached with memcached for replication purpose , please let me know if i am missing something regarding the difference between clustering and memcache ??* Being a newbie to memcache , Plese correct me if i am wrong . Thanks for reading .
Re: Is the term Replication and clustering are different with respect to 2 instances of Memcache for the same application .
rspadim , Could you please check this link https://groups.google.com/forum/#!topic/memcached/YCKNM6wRTbk where the author is saying that if you maintain two instances of servers in the list , the Data will be automatically backed up to the other server also , is thisn't clustering ?? On Friday, 12 October 2012 20:33:16 UTC+5:30, rspadim wrote: Since i know there is no cluster for memcached, cluster = syncronous replication, repcache is assync Em 12/10/2012 11:18, Kiran Kumar krn...@gmail.com javascript: escreveu: I have written a sample application as shown String location = localhost:11211,122.34.5:11211; MemcachedClientBuilder builder = new XMemcachedClientBuilder(AddrUtil.getAddressMap(location)); mcc.set(a, 0, Hello,xmemcached); Now i have memcache installed on both the IP addresses defined above . and i observed that if the local host server is down , data is fetched from the 2nd defined server . Please let me know , is there any difference between the Clustering and Replication here ?? *And i see a lot of buzz on using Repcached with memcached for replication purpose , please let me know if i am missing something regarding the difference between clustering and memcache ??* Being a newbie to memcache , Plese correct me if i am wrong . Thanks for reading .
Re: Is the term Replication and clustering are different with respect to 2 instances of Memcache for the same application .
On Fri, Oct 12, 2012 at 11:00 AM, Kiran Kumar krn1...@gmail.com wrote: Could you please check this link https://groups.google.com/forum/#!topic/memcached/YCKNM6wRTbk where the author is saying that if you maintain two instances of servers in the list , the Data will be automatically backed up to the other server also , is thisn't clustering ?? I don't see anything about data being 'backed up' in that link. It says that if you add a new server instance the clients will fill it in as the key hashing is adjusted to spread across the servers and they refresh cache misses as they pull them from the backend data store. They seem to be talking about running another memcached instance on the same server but a different port, but that doesn't make any difference to the client. -- Les Mikesell lesmikes...@gmail.com
Re: Is the term Replication and clustering are different with respect to 2 instances of Memcache for the same application .
Thanks LesMikesell you were right there is nothing mentioned anything about data being backed up in that link . What i really want to convery is that if one of the Memcahe Server one is is down , then automatically Data is being obtained from Memcahe Server two , which avoids single point of failure . so i don't care if Data is being obtained from any of the defined servers . ( that is what i mean to say data being copied to other location , i sincerely if it creates a different meaning in this context ) (becuase as a end user i don't bother from which the data is being obtained ) LesMikesell On Friday, 12 October 2012 21:51:22 UTC+5:30, LesMikesell wrote: On Fri, Oct 12, 2012 at 11:00 AM, Kiran Kumar krn...@gmail.comjavascript: wrote: Could you please check this link https://groups.google.com/forum/#!topic/memcached/YCKNM6wRTbk where the author is saying that if you maintain two instances of servers in the list , the Data will be automatically backed up to the other server also , is thisn't clustering ?? I don't see anything about data being 'backed up' in that link. It says that if you add a new server instance the clients will fill it in as the key hashing is adjusted to spread across the servers and they refresh cache misses as they pull them from the backend data store. They seem to be talking about running another memcached instance on the same server but a different port, but that doesn't make any difference to the client. -- Les Mikesell lesmi...@gmail.com javascript:
Re: Is the term Replication and clustering are different with respect to 2 instances of Memcache for the same application .
On Fri, Oct 12, 2012 at 11:31 AM, Kiran Kumar krn1...@gmail.com wrote: Thanks LesMikesell you were right there is nothing mentioned anything about data being backed up in that link . What i really want to convery is that if one of the Memcahe Server one is is down , then automatically Data is being obtained from Memcahe Server two , which avoids single point of failure . so i don't care if Data is being obtained from any of the defined servers . ( that is what i mean to say data being copied to other location , i sincerely if it creates a different meaning in this context ) (becuase as a end user i don't bother from which the data is being obtained ) Memcache should only be used for fast repeated access to _copies_ of data that can be reliably retrieved from some other database or storage. There are any number of reasons why a server will not have the data a client requests (it expired, it was evicted due to lack of space, the server was restarted, etc.). The client's response to a cache miss should always be to get the data from the reliable database and update it into the cache. So it won't matter if any particular data is lost for any particular reason as long as the backend database can keep up with the clients requesting the missed data (which they will then refresh into a rebalanced hash location).If you are planning to use memcache to store the only copy of data that you can't reconstruct, you should be looking for some other product. Memcache is just a very fast distributed cache, not a reliable database. But as long as you can retrieve the data for cache misses from some other source you can just add more servers to a cluster to scale to any size, and other than having to configure each client to know about all the servers it will take care of itself. -- Les Mikesell lesmikes...@gmail.com
Re: Is the term Replication and clustering are different with respect to 2 instances of Memcache for the same application .
Thanks LesMikesell,for the great explanation , i am helpless here , i am working on a existing application , which is designed in such a way that all the Data is written to Memcache (and there is no Database at all ) which is the only data store currently , so what i was asking is that, will clustering of Memcache Servers will avoid single point of failure ?? Thanks in advance . On Friday, 12 October 2012 22:44:14 UTC+5:30, LesMikesell wrote: On Fri, Oct 12, 2012 at 11:31 AM, Kiran Kumar krn...@gmail.comjavascript: wrote: Thanks LesMikesell you were right there is nothing mentioned anything about data being backed up in that link . What i really want to convery is that if one of the Memcahe Server one is is down , then automatically Data is being obtained from Memcahe Server two , which avoids single point of failure . so i don't care if Data is being obtained from any of the defined servers . ( that is what i mean to say data being copied to other location , i sincerely if it creates a different meaning in this context ) (becuase as a end user i don't bother from which the data is being obtained ) Memcache should only be used for fast repeated access to _copies_ of data that can be reliably retrieved from some other database or storage. There are any number of reasons why a server will not have the data a client requests (it expired, it was evicted due to lack of space, the server was restarted, etc.). The client's response to a cache miss should always be to get the data from the reliable database and update it into the cache. So it won't matter if any particular data is lost for any particular reason as long as the backend database can keep up with the clients requesting the missed data (which they will then refresh into a rebalanced hash location).If you are planning to use memcache to store the only copy of data that you can't reconstruct, you should be looking for some other product. Memcache is just a very fast distributed cache, not a reliable database. But as long as you can retrieve the data for cache misses from some other source you can just add more servers to a cluster to scale to any size, and other than having to configure each client to know about all the servers it will take care of itself. -- Les Mikesell lesmi...@gmail.com javascript:
Re: Is the term Replication and clustering are different with respect to 2 instances of Memcache for the same application .
On Fri, Oct 12, 2012 at 1:16 PM, Kiran Kumar krn1...@gmail.com wrote: Thanks LesMikesell,for the great explanation , i am helpless here , i am working on a existing application , which is designed in such a way that all the Data is written to Memcache (and there is no Database at all ) which is the only data store currently , so what i was asking is that, will clustering of Memcache Servers will avoid single point of failure ?? It will not avoid losing the values currently in the cache. If that matters, memcache is not what you should be using to store it. Clustering avoids a single point of failure in the sense that the hash re-balancing continues to provide the clients a place to cache freshly obtained data. -- Les Mikesell lesmikes...@gmail.com
Re: Is the term Replication and clustering are different with respect to 2 instances of Memcache for the same application .
Will replication of Memcache servers can solve the problem of not losing the data ?? On Saturday, 13 October 2012 00:24:31 UTC+5:30, LesMikesell wrote: On Fri, Oct 12, 2012 at 1:16 PM, Kiran Kumar krn...@gmail.comjavascript: wrote: Thanks LesMikesell,for the great explanation , i am helpless here , i am working on a existing application , which is designed in such a way that all the Data is written to Memcache (and there is no Database at all ) which is the only data store currently , so what i was asking is that, will clustering of Memcache Servers will avoid single point of failure ?? It will not avoid losing the values currently in the cache. If that matters, memcache is not what you should be using to store it. Clustering avoids a single point of failure in the sense that the hash re-balancing continues to provide the clients a place to cache freshly obtained data. -- Les Mikesell lesmi...@gmail.com javascript:
Re: Is the term Replication and clustering are different with respect to 2 instances of Memcache for the same application .
On Fri, Oct 12, 2012 at 2:03 PM, Kiran Kumar krn1...@gmail.com wrote: Will replication of Memcache servers can solve the problem of not losing the data ?? Not in an absolute sense. That is, there are still other reasons data might be evicted, and nothing in memcache is going to provide replication - it is just not what it is designed for. And if your whole site loses power, it will be gone anyway. Having said that, there are other people with the same problem. http://www.couchbase.com/couchbase-server/overview might work ( I haven't tried it, so that's not a recommendation - just something that looks like it will it will work with the same clients but attempts to provide reliable storage). There have been other similar attempts, but I haven't followed their current status. -- Les Mikesell lesmikes...@gmail.com
Re: Is the term Replication and clustering are different with respect to 2 instances of Memcache for the same application .
Thanks LesMikesell , I was searching for Data replication Option with xMemcahced library , what i found is that Data replication with xmemcache is possible by using repcached , please see this link https://groups.google.com/forum/#!msg/xmemcached/4LezU1A7ldU/OpXD_uEHDgAJ and let me know is that dependable to go with ?? can i use repcache with Memcache on Java application . On Saturday, 13 October 2012 00:52:23 UTC+5:30, LesMikesell wrote: On Fri, Oct 12, 2012 at 2:03 PM, Kiran Kumar krn...@gmail.comjavascript: wrote: Will replication of Memcache servers can solve the problem of not losing the data ?? Not in an absolute sense. That is, there are still other reasons data might be evicted, and nothing in memcache is going to provide replication - it is just not what it is designed for. And if your whole site loses power, it will be gone anyway. Having said that, there are other people with the same problem. http://www.couchbase.com/couchbase-server/overview might work ( I haven't tried it, so that's not a recommendation - just something that looks like it will it will work with the same clients but attempts to provide reliable storage). There have been other similar attempts, but I haven't followed their current status. -- Les Mikesell lesmi...@gmail.com javascript:
Re: Is the term Replication and clustering are different with respect to 2 instances of Memcache for the same application .
On Fri, Oct 12, 2012 at 2:50 PM, Kiran Kumar krn1...@gmail.com wrote: Thanks LesMikesell , I was searching for Data replication Option with xMemcahced library , what i found is that Data replication with xmemcache is possible by using repcached , please see this link https://groups.google.com/forum/#!msg/xmemcached/4LezU1A7ldU/OpXD_uEHDgAJ and let me know is that dependable to go with ?? can i use repcache with Memcache on Java application . I don't know anything about repcached. It might work, but if you need reliable storage I'd recommend using something that is designed to provide reliable storage instead of just using something designed to be a cache even with multiple instances. -- Les Mikesell lesmikes...@gmail.com
Re: Is the term Replication and clustering are different with respect to 2 instances of Memcache for the same application .
Thanks a lot for answering all my questions . have a great time and thanks once again . On Saturday, 13 October 2012 01:37:07 UTC+5:30, LesMikesell wrote: On Fri, Oct 12, 2012 at 2:50 PM, Kiran Kumar krn...@gmail.comjavascript: wrote: Thanks LesMikesell , I was searching for Data replication Option with xMemcahced library , what i found is that Data replication with xmemcache is possible by using repcached , please see this link https://groups.google.com/forum/#!msg/xmemcached/4LezU1A7ldU/OpXD_uEHDgAJ and let me know is that dependable to go with ?? can i use repcache with Memcache on Java application . I don't know anything about repcached. It might work, but if you need reliable storage I'd recommend using something that is designed to provide reliable storage instead of just using something designed to be a cache even with multiple instances. -- Les Mikesell lesmi...@gmail.com javascript:
Replication of key-value pairs
Hi, Are the key-value pairs replicated on different nodes or does the pair remain with only on one RAM? Regards, Priya
Re: Replication of key-value pairs
On 3/4/11 3:54 AM, Priya wrote: Are the key-value pairs replicated on different nodes or does the pair remain with only on one RAM? With memcached, key/value pairs remain only in one node in RAM. Have a look at the wiki and the list archives for more info. Good luck! Matt
Re: Replication ?
hum... memcached is a cache (developers don´t care about database) memcachedb is a a database with memcache library protocol membase is a database with memcache library protocol if you want database features use membase or memcachedb 2011/3/4 Nathan Nobbe quickshif...@gmail.com: On Thu, Mar 3, 2011 at 6:42 PM, dormando dorma...@rydia.net wrote: Hi all, I know I'll get blasted for not googling enough, but I have a quick question. I was under the impression memcached servers replicated data, such that if i have 2 servers and one machine goes down the data would all still be available on the other machine. this with the understanding that some data may not yet have been replicated as replication isn't instantaneous. Can you clarify for me? thx, -nathan I sound like a broken record about this, but I like restating things nobody cares about; - memcached doesn't do replication by default - because not replicating your cache gives you 2x cache space - and when you have 10 memcached servers and one fails... - ... you get some 10% miss rate. - and may cache 2x more crap in the meantime. if your workload really requires cache data never disappear, you're looking more for a database (mysql, NoSQL, or otherwise). hmm, i hear you here and am starting to wonder about the application of memcached which drove me to this question, namely php session storage. it's often discussed on the php-general list the pros and cons of memcached in said application and i know many sites move to memcached to increase performance over a db backend. however there is the issue of loosing the session if a memcached box goes down. perhaps memcached isn't the most appropriate place for session storage as its not considered data that should be allowed to disappear. i know its OT, but .. thoughts? :) -nathan -- Roberto Spadim Spadim Technology / SPAEmpresarial
Re: Replication ?
guys, the creators of this much loved tool -- viz-a-viz memcache -- designed it with one goal in mind: CACHING!! using sessions with memcache would only make sense from a CACHING standpoint, i.e. cache the session values in your memcache server and if the caching fails for some reason or another, hit your permanent storage system: RDBMS or No-SQL... obvioulsy, your caching server specs (and supporting environment like interconnect fabrics, Mbps download capacity, server durability, etc..) should reflect your user load + dat importance for efficiency, among other factors.. i generally use Memcache (+ PHP) out of the box with this in mind and never found any earth-moving issues... For sessions particularly, i never found any issues. I think it's vitally important to keep in mind what Memcache is for ... a CACHING TOOL.. and not a permanent storage system (also it's a Friday evening here in England so please excuse the language.. and any typos ;) ) Moses. On 4 March 2011 23:38, Dustin dsalli...@gmail.com wrote: On Mar 4, 9:11 am, Nathan Nobbe quickshif...@gmail.com wrote: i know its OT, but .. thoughts? :) He captured thoughts about this a while back in a blog post that's worth a read either way: http://dormando.livejournal.com/495593.html
Re: Replication ?
guys, the creators of this much loved tool -- viz-a-viz memcache -- designed it with one goal in mind: CACHING!! using sessions with memcache would only make sense from a CACHING standpoint, i.e. cache the session values in your memcache server and if the caching fails for some reason or another, hit your permanent storage system: RDBMS or No-SQL... obvioulsy, your caching server specs (and supporting environment like interconnect fabrics, Mbps download capacity, server durability, etc..) should reflect your user load + dat importance for efficiency, among other factors.. i generally use Memcache (+ PHP) out of the box with this in mind and never found any earth-moving issues... For sessions particularly, i never found any issues. I think it's vitally important to keep in mind what Memcache is for ... a CACHING TOOL.. and not a permanent storage system (also it's a Friday evening here in England so please excuse the language.. and any typos ;) ) Moses. As I pointed out in that blog post, it's also handy for achieving write amplifications of less than 1.0 for more lossy data. soo. it's more about matching the tool vs your actual needs. most of the problem here has always been separating perceieved requirements from actual requirements.
Re: Replication ?
On Mar 4, 2011 10:38 PM, dormando dorma...@rydia.net wrote: soo. it's more about matching the tool vs your actual needs. most of the problem here has always been separating perceieved requirements from actual requirements. yeah, that's an incredibly important distinction. i talk to a lot of people who seem to think that their data is so important, they can't possibly tolerate even a brief inconsistency. or that just because memcached *could* lose data means that it will. the truth is, we've been running a large (over 500GB on, at one point, up to 50 servers) installation and we've had very little data loss. generally, the only times a server went down were when we intentionally brought it down or the very rare hardware failure. obviously, it's not a persistent datastore and you need to keep your permanent data somewhere, but for anything ephemeral or that can be easily queried or recomputed, memcached is an excellent and fairly reliable choice. in fact, i would bet there are a lot of situations where a fairly high-traffic site chooses to store something like session in a slower but more reliable datastore because they can't afford to lose the data, but end up with a lower QOS because the datastore can't keep up with the load and ends up with failled reads and/or writes. awl
Replication ?
Hi all, I know I'll get blasted for not googling enough, but I have a quick question. I was under the impression memcached servers replicated data, such that if i have 2 servers and one machine goes down the data would all still be available on the other machine. this with the understanding that some data may not yet have been replicated as replication isn't instantaneous. Can you clarify for me? thx, -nathan
Re: Replication ?
On Thu, Mar 3, 2011 at 2:44 PM, Roberto Spadim robe...@spadim.com.brwrote: more here: http://repcached.lab.klab.org/ This was the first thing that came up on google, just wanted to verify memcached doesn't replicate out-of-the-box. thx, -nathan
Re: Replication ?
On Thu, Mar 3, 2011 at 3:02 PM, Roberto Spadim robe...@spadim.com.brwrote: humm i will tell my experience there´s two ideas one replication (like raid1) other load balance (like raid0 stripe) client side can load balance like 'raid0' (i don´t know if libmemcache have this, in php i use it, and works well) repcache works like 'raid1' (for cluster and HA i´m using it without problems, and it´s very good!) memcachedb have non volatile tools (use harddisk/ssd 'cache' with a berkley db) there´s another memcache port but i don´t remember now, with more features (web administration and others tools) maybe in future we could put all in one package? i don´t know... A friend has mentioned membase: http://www.membase.org/ though I've hardly had a minute to investigate, it implements the memcache protocol, but it sounds like it may use something other than libmemcache on the backend. -nathan
Re: Replication ?
Hi Nathan, On 3/3/11 1:42 PM, Nathan Nobbe wrote: Hi all, I know I'll get blasted for not googling enough, but I have a quick question. Here's a dime. Get yourself a web browser and bring me back $0.10 change. :) (said jokingly...) I was under the impression memcached servers replicated data, such that if i have 2 servers and one machine goes down the data would all still be available on the other machine. this with the understanding that some data may not yet have been replicated as replication isn't instantaneous. There are a few memcached related things that do replication, but the core memcached server itself does not replicate. One is something related (forked?) from memcached called repcache. It does it on the server side as clustered pairs. One is something called Membase, which uses the memcached core (kinda forked, aiming to put back), which has special hashing called vbucket hashing. This can be transparent to the client though. One is that libmemcached does replication from the client, but has admittedly lots of interesting potential consistency issues depending on what fails when and how much it actually fails. I'll let you go further with that browser you just downloaded. :) Matt p.s.: full disclosure: I'm pretty heavily involved in Membase
Re: Replication ?
humm membase = memcache+repcache+memcachedb http://wiki.membase.org/display/membase/Membase+for+Memcached+Users nice =) 2011/3/3 Matt Ingenthron ingen...@cep.net: On 3/3/11 2:13 PM, Nathan Nobbe wrote: A friend has mentioned membase: http://www.membase.org/ though I've hardly had a minute to investigate, it implements the memcache protocol, but it sounds like it may use something other than libmemcache on the backend. It's a bit off topic for this list and should be discussed further over there, but to avoid the kinds of consistency challenges and topology change problems associated with repcached/libmemcached replication, Membase took a very different approach with vbuckets and vbucket hashing. Your browser will find you more. :) Clients don't have to be aware of this, as moxi can abstract away the details if the client doesn't know vbucket hashing. FWIW, Trond Norbye who I think did the libmemcached replication work is also a Membase guy. Regards, Matt -- Roberto Spadim Spadim Technology / SPAEmpresarial
Re: Replication ?
Hi all, I know I'll get blasted for not googling enough, but I have a quick question. I was under the impression memcached servers replicated data, such that if i have 2 servers and one machine goes down the data would all still be available on the other machine. this with the understanding that some data may not yet have been replicated as replication isn't instantaneous. Can you clarify for me? thx, -nathan I sound like a broken record about this, but I like restating things nobody cares about; - memcached doesn't do replication by default - because not replicating your cache gives you 2x cache space - and when you have 10 memcached servers and one fails... - ... you get some 10% miss rate. - and may cache 2x more crap in the meantime. if your workload really requires cache data never disappear, you're looking more for a database (mysql, NoSQL, or otherwise). the original point (and something I still see as a feature) is the ability to elastically add/remove cache space in front of things which don't scale as well or take too much time to process. For everything else there's mastercard^Wredis^Wmembase^Wcassandra^Wsomeotherproduct -Dormando
Have anybody tried Memcached With repcached Built-In Server Side Replication
Here is the Blog link from where i found it, http://www.howtoforge.com/how-to-install-memcached-with-repcached-built-in-server-side-replication-on-debian-lenny Please share the experiences , if anybody tried this one. As i have searched for many plugins for Memcache Data Backup(as i am highly relying on Memcache Data, not as stale datasource though i have persistent DB storage). Any suggestions will be appreciated!! Thanks in advance. nEosAg
PostgreSQL, Caching and replication
fyi, PostgreSQL CHAR(10) conference has detailed coverage of * PostgreSQL and memcache integration * Latest PostgreSQL 9.0 replication features * Slony and pgpool updates * other technologies for clustering and cloud computing CHAR(10) is being held in Oxford, UK on July 2-3. You can register and/or pay online at http://www.char10.org/ Please register in next two weeks to avoid late booking fees. See you there! -- Simon Riggs www.2ndQuadrant.com PostgreSQL Development, 24x7 Support, Training and Services
MemcacheDB 1.2.0-beta is released, new commands support and replication improved
Hi, all, I am glad to announce that MemcacheDB 1.2.0 beta is release! This version has supported the new 'append/prepend' command that is defined in memcache protocol. Also some replication code improved, and many bug fixed. A new benchmark suit and top like monitor is shipped. Have a try with 'tools/mcben.py' to get your own performance benchmark in your environment. In my environment, the performance of MemcacheDB is very close to Memcached, but benefits from a persistent storage. Please download from: http://code.google.com/p/memcachedb/downloads/list *Notice*: If you are using replication of MemcacheDB 1.1.0, please upgrade to this version. *ChangLog* since last release: 2008-10-16 Version 1.2.0-beta released 2008-10-14 Steve Chu [EMAIL PROTECTED] * a new unittest suit 'mdbtest.py' is added * a new benchmark suit 'mcben.py' is added, now you can get the benchmark in your environment and find out how fast MemcacheDB can run. 2008-10-08 Steve Chu [EMAIL PROTECTED] * lots of statistics code clean up; stats command adjusted for better rendering; now more replication statistics info is provided. * more compact and verbose message for logging * lots of replication code clean up for more reliable electing, a new option -n is added that allows user to customize the votes of electing. * memcache.py is nearly patched for recent changes on private commands. 2008-09-04 Steve Chu [EMAIL PROTECTED] * New option '-e' to set percent of the pages in the cache that should be clean, used for memp_trickle call(only available when '-T' is presented). 2008-09-03 Steve Chu [EMAIL PROTECTED] * Replace the database type setting option '-T' with '-B' * Now '-T' has new meaning that it fires a separate thread to do memp_trickle every xx seconds. This feature makes the memory pool more effective by reducing too much frequent pages swapping. 2008-09-01 Steve Chu [EMAIL PROTECTED] * Now 'append' and 'prepend' commands are supported. * Merge bugfix code from Memecached community. * lots of refactors for better implementation and a bit code tuning. Use 'tools/mcben.py -h' to see how to use the benchmark suit, and use 'tools/mdbtop.py -h' to find out how to use the monitor. Below are benchmark result I got from a dell 2950 4G/2core box: MemcacheDB: -- Server name: 127.0.0.1:21201 Command: SET Thread number: 4 Requests per thread: 100 Value Length: 100 bytes Avg. time cost per thread: 339.276669 seconds Throughout: 1335 kbytes/sec Requests per second: 11789 req/sec Time cost per request: 0.084819 ms Total requests: 400 Total errors: 0 Server name: 127.0.0.1:21201 Command: GET Thread number: 4 Requests per thread: 100 Value Length: 100 bytes Avg. time cost per thread: 348.257951 seconds Throughout: 1301 kbytes/sec Requests per second: 11485 req/sec Time cost per request: 0.087064 ms Total requests: 400 Total errors: 0 Memcached: --- Server name: 127.0.0.1:11211 Command: SET Thread number: 4 Requests per thread: 100 Value Length: 100 bytes Avg. time cost per thread: 324.060816 seconds Throughout: 1398 kbytes/sec Requests per second: 12343 req/sec Time cost per request: 0.081015 ms Total requests: 400 Total errors: 0 Server name: 127.0.0.1:11211 Command: GET Thread number: 4 Requests per thread: 100 Value Length: 100 bytes Avg. time cost per thread: 351.367676 seconds Throughout: 1289 kbytes/sec Requests per second: 11384 req/sec Time cost per request: 0.087842 ms Total requests: 400 Total errors: 0 You will find this performance result is worse than what the official site said, yes, I guess it is caused by 'memcache.py' and the thread model of python. Because that benchmark was using the libmemcached and multiple process model and also on a different box. Any bugs and feedbacks are welcome and appreciated:) -- Steve Chu http://stvchu.org