How a website faces the pressure of high capacity and high concurrency is something architects need to study. Although my current work station has not reached this level, some preparations should begin. The plan for us is from half a year to one year, complete the architecture design of high-capacity and high-concurrency systems. Start with redis.
First, you have to prepare a high-record data sample, but there is no ready-made data in hand, so you have to retrieve it from the SMS System. The SMS System uses MSSQL and first needs to import it to MySQL, I used mss2sql, which is: Explain.
Next, we installed redis and installed version 2.4 in windows. We were ready to import the table from MySQL to redis. We found that there was an article on the Internet to introduce the export method: http://www.oschina.net/translate/mysql-to-redis-in-one-step "One step to complete MySQL to redis migration, found in Windows always prompt
G: \ redis-2.4.5-win32-win64 \ 64bit> redis-cli -- Pipe
(Error) Err Unknown command '-- pipe'
In the first place, I thought it was the reason for Windows. Then I prepared a centos VM. I tried some nginx + PHP + mysq environments and found that the above error was prompted when I installed redis, in the end, I used redis2.4 in both Windows and Linux. Now I have used version 2.6 and version 2.8, so upgrade it. Found that the highest version of the yum library is only 2.4, that only manually installed: http://www.redis.io/download
$ wget http://download.redis.io/releases/redis-2.8.14.tar.gz$ tar xzf redis-2.8.14.tar.gz$ cd redis-2.8.14$ make
Prompt GCC forgot to install, continue tamping, refer to: http://xueliang1yi.blog.163.com/blog/static/1145570162012102114635764/
1. GCC is useless when an error is reported
Installation Process
Yum install CPP
Yum install binutils
Yum install glibc
Yum install glibc-kernheaders
Yum install glibc-common
Yum install glibc-devel
Yum install gcc
Yum install make
Note that GCC depends on a lot of things. Some Packages may have been installed in the system, and some may not, so it is best to go through it to prevent exceptions.
2. Error 2: No tcl8.5. Install tcl8.5 as follows:
: Http://downloads.sourceforge.net/tcl/tcl8.5.10-src.tar.gz
Installation Process
Tar-zxvf tcl8.5.tar.gz
./Configure
Make
Make install
3. Install redis
Make
Make Test // check to see if there is any problem
Make install
If make continues to report an error, the information is as follows: Error: jemalloc/jemalloc. h: no such file or directory
Execute make malloc = libc.
Note that in order to prevent exceptions, if make fails, clean up and execute make clean
In this way, redis2.8 is installed. You can also run mysql-u root-pxxx database name -- skip-column-names -- raw <events_to_redis. SQL | redis-cli -- Pipe
Other references:
Redis Application Scenario: http://blog.csdn.net/hguisu/article/details/8836819
Phpredis Chinese manual-redis Chinese manual PHP: http://www.cnblogs.com/zcy_soft/archive/2012/09/21/2697006.html
Key Value Design of redis Database: http://blog.nosqlfan.com/html/3033.html
Nosql application scenario -- using redis to build a fake Twitter: http://blog.csdn.net/exsuns/article/details/6358414 http://www.cnblogs.com/jackluo/archive/2013/06/27/3158974.html
March towards architecture technology-practice redis (1)