2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
1.प्रदर्शनम्
Redis: केवलं एकस्य कोरस्य उपयोगं करोति औसतेन, प्रत्येकस्मिन् कोरे लघुदत्तांशं संग्रहीतुं Redis इत्यस्य प्रदर्शनं Memcached इत्यस्मात् अधिकं भवति ।
Memcached: भवान् बहुकोरस्य उपयोगं कर्तुं शक्नोति, तथा च 100k तः अधिकस्य आँकडासु, Memcached प्रदर्शनं Redis इत्यस्मात् अधिकं भवति ।
2. स्मृतिप्रयोगदक्षता
MemCached: सरल-कुंजी-मूल्य-भण्डारणस्य उपयोगेन, Memcached इत्यस्य स्मृति-उपयोगः अधिकः भवति ।
Redis: यदि कील-मूल्य-भण्डारणार्थं हैश-संरचनायाः उपयोगः भवति तर्हि तस्य स्मृति-उपयोगः तस्य संयुक्त-संपीडनस्य कारणेन Memcached इत्यस्मात् अधिकः भविष्यति ।
3. स्मृतिस्थानं तथा दत्तांशस्य आकारः
MemCached: अधिकतमस्मृतिः परिवर्तयितुं शक्यते, LRU एल्गोरिदम् इत्यस्य उपयोगेन । Memcached इत्यस्मिन् एकस्य कील-मूल्यस्य आकारः सीमितः अस्ति, तथा च मूल्यं केवलं अधिकतमं 1MB समर्थयति ।
Redis: VM विशेषताः योजयति भौतिकस्मृतेः सीमां च भङ्गयति । Redis अधिकतमं एकं कील-मूल्यं 512MB इत्यस्य आकारं समर्थयति ।
4.दत्तांशसंरचना समर्थनम्
MemCached: एकलदत्तांशसंरचना, केवलं आँकडानां संग्रहणार्थं उपयुज्यते ।
Redis: समृद्धतरदत्तांशप्रकारस्य समर्थनं करोति Redis न केवलं सरलं k/v प्रकारस्य आँकडानां समर्थनं करोति, अपितु list, set, zset, hash इत्यादीनां दत्तांशसंरचनानां भण्डारणं अपि प्रदाति ।
दत्तांशस्य उपरि समृद्धानि कार्याणि प्रत्यक्षतया सर्वरपक्षे कर्तुं शक्यन्ते, येन संजालस्य IO समयः, आँकडानां मात्रा च न्यूनीकर्तुं शक्यते ।
5.विश्वसनीयता
Memcached: इदं केवलं न्यूनविश्वसनीयतायाः आवश्यकतायुक्तं स्मृतिसञ्चयम् अस्ति । MemCached दत्तांशस्य स्थायित्वं समर्थयति न भवति दत्तांशः विद्युत्-विच्छेदस्य अथवा पुनः आरम्भस्य अनन्तरं अन्तर्धानं भवति, परन्तु स्थिरतायाः गारण्टी अस्ति ।
Redis: उच्चविश्वसनीयतायाः आवश्यकताः सन्ति, आँकडानां स्थायित्वं दत्तांशपुनर्प्राप्तिः च समर्थयति, विफलतायाः एकबिन्दून् अनुमन्यते, अपि च किञ्चित् कार्यक्षमतां प्रभावितं करोति । data backup इत्यस्य समर्थनं करोति, अर्थात् master-slave mode इत्यत्र data backup इत्यस्य समर्थनं करोति । Redis दत्तांशस्थायित्वं समर्थयति ।
6. अनुप्रयोगपरिदृश्यानि
Memcached: आँकडाधारभारं न्यूनीकरोति तथा गतिशीलप्रणालीषु कार्यक्षमतां सुधारयति, अधिकपठनस्य, न्यूनलेखनस्य, बृहत्दत्तांशमात्रायाः परिदृश्यानां च कृते उपयुक्तम्;
रेडिस: उच्चपठनलेखनदक्षतायाः, जटिलदत्तांशसंसाधनव्यापारस्य, उच्चसुरक्षाआवश्यकतानां च आवश्यकतां विद्यमानानाम् प्रणालीनां कृते उपयुक्तम् ।
1.redis संस्थापनम्
प्रथमं अग्निप्रावरणं निष्क्रियं कुर्वन्तु
- 先把防火墙关掉
- systemctl stop firewalld
- set setenforce 0
-
- [root@localhost ~]# yum -y install gcc* zlib-devel
- 解压 redis包
- [root@localhost ~]# tar xvzf redis-4.0.9.tar.gz
- [root@localhost ~]# cd redis-4.0.9/
-
- make
- 2:查看进程
- [root@localhost utils]# netstat -anpt | grep redis
-
- 3:redis服务控制
- [root@localhost ~]#/etc/init.d/redis_6379 stop
- [root@localhost ~]#/etc/init.d/redis_6379 start
- [root@localhost ~]#/etc/init.d/redis_6379 restart
- [root@localhost ~]#/etc/init.d/redis_6379 status
- 4.配置参数的修改
- [root@localhost ~]#vim /etc/redis/6379.conf
- bind 127.0.0.1 192.168.10.101 //监听的主机地址
- port 6379 //端口
- daemonize yes //启用守护进程
- pidfile /var/run/redis_6379.pid //指定 PID 文件
- loglevel notice //日志级别
- logfile /var/log/redis_6379.log //指定日志文件
-
- [root@localhost~]#/etc/init.d/redis_6379 restart
- [root@localhost utils]# netstat -anpt | grep redis
-
- 二:Redis 命令工具
- redis-server:用于启动 Redis 的工具;
- redis-benchmark:用于检测 Redis 在本机的运行效率;
- redis-check-aof:修复 AOF 持久化文件;
- redis-check-rdb:修复 RDB 持久化文件;
- redis-cli:Redis 命令行工具。
सेट् रचतु
दृश्यं प्राप्नुत
कीलानि * सर्वाणि पश्यन्तु
rename (अतिलेखनं करिष्यति)
renamenx (एकमेव नाम अस्ति वा इति परीक्ष्य, ततः rename आदेशं निष्पादयितुं निर्णयं कुर्वन्तु,)
del (आदेशः वर्तमानदत्तांशकोशस्य निर्दिष्टं कीलं विलोपयितुं शक्नोति)
exists (आदेशः कुञ्जीमूल्यं अस्ति वा इति निर्धारयितुं शक्नोति)
type (कीलस्य अनुरूपं मूल्यप्रकारं प्राप्तुं type आदेशस्य उपयोगं कुर्वन्तु)
चयनं कुर्वन्तु (दत्तांशकोशं स्विच कुर्वन्तु) .
move (दत्तांशं चालयति) २.
flushdb (वर्तमानदत्तांशकोशदत्तांशं स्पष्टं कुर्वन्तु)
flushall (सर्वं दत्तांशकोशदत्तांशं स्वच्छं कुर्वन्तु)
- -p:指定服务器端口;
- -s:指定服务器 socket;
- -c:指定并发连接数;
- -n:指定请求数;
- -d:以字节的形式指定 SET/GET 值的数据大小;
- -k:1=keep alive 0=reconnect;
- -r:SET/GET/INCR 使用随机 key, SADD 使用随机值;
- -P:通过管道传输<numreq>请求;
- -q:强制退出 redis。仅显示 query/sec 值;
- --csv:以 CSV 格式输出;
- -l:生成循环,永久执行测试;
- -t:仅运行以逗号分隔的测试命令列表;
- -I:Idle 模式。仅打开 N 个 idle 连接并等待。
रेडिस् सर्वे दत्तांशाः स्मृतौ संगृह्यन्ते ततः समये समये अतुल्यकालिकरूपेण डिस्कमध्ये रक्षिताः भवन्ति ।(इति“अर्धनिरन्तरः मोडः”); केवलं सञ्चिका(aof) योजयन्तुइत्यस्मिन्(इति“पूर्ण दृढता मोड”)。
यतः रेडिस् सर्वे दत्तांशाः स्मृतौ संगृह्यन्ते यदि स्थायित्वं न विन्यस्तं भवति ।रेडिस् पुनः आरम्भस्य अनन्तरं सर्वे दत्तांशाः नष्टाः भवन्ति ।अतः सक्षमीकरणम् आवश्यकम्रेडिस् स्थायित्वकार्यं दत्तांशं डिस्कमध्ये रक्षति रेडिस् पुनः आरम्भस्य अनन्तरं डिस्कतः दत्तांशं पुनः प्राप्तुं शक्यते ।रेडिस् दृढतायाः कृते द्वौ विधिः प्रदत्तः, एकः अस्ति आर डी बी(रेडिस डाटाबेस) दृढता (सिद्धान्तः इति रीड्सस्मृति-अन्तर्गत-दत्तांशकोश-लॉगिंग-समयः निपात डिस्कं प्रति आर डी बी दृढता), अन्यः इति एओएफ(केवलं सञ्चिकां योजयन्तु)दृढता (सिद्धान्तः इति रीड्स ऑपरेशन लॉग् सञ्चिकायां संलग्नरूपेण लिख्यते) ।
पूर्वनिर्धारितविधिः
RDB स्थायित्वं वर्तमानप्रक्रियादत्तांशस्य स्नैपशॉट् जनयित्वा हार्डडिस्कमध्ये रक्षितुं प्रक्रिया अस्ति RDB स्थायित्वं उत्प्रेरयितुं प्रक्रिया मैनुअल् ट्रिगरिंग् तथा स्वचालितं ट्रिगरिंग् इति विभक्तम् अस्ति ।
Trigger mechanism: Manual triggering क्रमशः save तथा bgsave आदेशानां अनुरूपं भवति ।
save आदेशः: वर्तमानं Redis सर्वरं यावत् RDB प्रक्रिया न समाप्तं भवति तावत् अवरुद्धं करोति । ऑनलाइन वातावरणेषु उपयोगाय न अनुशंसितम्।
bgsave आदेशः: Redis प्रक्रिया बालप्रक्रियायाः निर्माणार्थं fork (प्रक्रियायाः निर्माणार्थं प्रयुक्तं कार्यं) संचालनं निष्पादयति RDB स्थायित्वप्रक्रिया बालप्रक्रियायाः उत्तरदायी भवति तथा च समाप्तेः अनन्तरं स्वयमेव समाप्तं भवति अवरोधः केवलं हंसचरणस्य समये एव भवति ।
आरडीबी इत्यस्य लाभाः : १.
RDB एकः संकुचितः, संपीडितः द्विचक्रीयसञ्चिका अस्ति या एकस्मिन् निश्चिते समये Redis-दत्तांशस्य स्नैपशॉट् प्रतिनिधियति । बैकअप, पूर्णप्रतिलिपिः इत्यादीनां परिदृश्यानां कृते अतीव उपयुक्तम् अस्ति । यथा, प्रत्येकं 6 घण्टेषु bgsave backup कुर्वन्तु तथा च आपदापुनर्प्राप्त्यर्थं RDB सञ्चिकां दूरस्थयन्त्रे अथवा सञ्चिकाप्रणाल्यां प्रतिलिख्यताम् ।
Redis RDB लोड् करोति तथा च AOF पद्धत्याः अपेक्षया बहु शीघ्रं डेटा पुनः प्राप्तं करोति ।
आरडीबी इत्यस्य दोषाः : १.
RDB मोड् मध्ये दत्तांशः वास्तविकसमयस्य स्थायित्वं/द्वितीयस्तरस्य स्थायित्वं प्राप्तुं न शक्नोति । यतः प्रत्येकं bgsave चालितं भवति चेत् बालप्रक्रियायाः निर्माणार्थं fork ऑपरेशनं क्रियते, यत् भारी भारयुक्तं ऑपरेशनं भवति तथा च नित्यं निष्पादनस्य व्ययः अत्यधिकः भवति
RDB सञ्चिकाः विशिष्टे द्विचक्रीयस्वरूपेण रक्षिताः भवन्ति Redis संस्करणानाम् अनेकाः प्रारूपाः सन्ति यत् Redis सेवायाः पुरातनं संस्करणं RDB प्रारूपस्य नूतनसंस्करणेन सह सङ्गतं नास्ति ।
2. एओएफ इति किम् ?
AOF (append only file) persistence: प्रत्येकं write आदेशं स्वतन्त्रे लॉग् मध्ये अभिलेखयन्तु, ततः पुनः आरम्भे दत्तांशं पुनर्स्थापयितुं AOF सञ्चिकायां आदेशं पुनः निष्पादयन्तु एओएफ इत्यस्य मुख्यं कार्यं दत्तांशस्थायित्वस्य वास्तविकसमयसमस्यायाः समाधानं भवति अधुना रेडिसस्य स्थायित्वस्य मुख्यधारा अस्ति ।
उच्चतरसञ्चयसङ्गठनस्य विनिमयरूपेण किञ्चित् कार्यक्षमतां त्यागयन्तु (एओएफ),
यदा लेखनक्रियाः बहुधा भवन्ति तदा उच्चतरप्रदर्शनस्य विनिमयरूपेण बैकअपं सक्षमं न कुर्वन्तु तथा च हस्तचलितसञ्चालनस्य प्रतीक्षां कुर्वन्तु । रक्ष् यदा, पुनः बैकअपं कुर्वन्तु (आर डी बी)
टिप्पणी : १.
यदि पुनः आरम्भस्य अनन्तरं निरन्तरं सञ्चिकां लोड् कर्तुं आवश्यकं भवति तर्हि AOF सञ्चिकाः चयनिताः भविष्यन्ति ।
यदि प्रथमं RDB सक्षमं भवति ततः AOF सक्षमं भवति, तथा च RDB प्रथमं स्थास्यति तर्हि RDB सञ्चिकायां सामग्री AOF द्वारा अधिलिखिता भविष्यति ।
[मूल @ स्थानीयमेजबान ~] # vim / इत्यादि / redis / 6379.conf
उद्घाटित 6379.conf सञ्चिकायाः अनन्तरं अन्वेषणं कुर्वन्तु रक्ष्, अधः दर्शितवत् विन्याससूचनाः द्रष्टुं शक्नुवन्ति ।
अस्ति रेडिस् विन्याससञ्चिकायां त्रीणि समन्वयनविधयः सन्ति, ते सन्ति :
always: synchronous persistence, प्रत्येकं समये दत्तांशः परिवर्तते, तत् तत्क्षणमेव डिस्कमध्ये लिखितं भविष्यति
everysec: पूर्वनिर्धारितरूपेण अनुशंसितं, प्रत्येकं सेकण्डं अतुल्यकालिकरूपेण अभिलेखयन्तु (पूर्वनिर्धारितं मूल्यम्)
no: समन्वयनं नास्ति, समन्वयनं कथं कर्तव्यमिति निर्णयं प्रचालनतन्त्राय त्यक्त्वा
अन्तिमस्य सम्भाव्यसमस्याजनकस्य निर्देशस्य अवहेलनां कुर्वन्तु
[मूल @ स्थानीयमेजबान ~] # / इत्यादि / init.d / redis_6379 पुनः आरंभ
समाधानार्थम् एओएफ यदि सञ्चिकायाः आकारः निरन्तरं वर्धते तर्हि उपयोक्तारः प्रति प्रतिवेदनं कर्तुं शक्नुवन्ति रेडिस् प्रेषयतु BGREWRITEAOFआदेशः।BGREWRITEAOF आदेशः मार्गेण निष्कासितः भविष्यति एओएफ अधिलिखितुं सञ्चिकायां अनावश्यकानि आदेशानि (पुनर्लेखनम्)एओएफfile, make एओएफ सञ्चिकायाः आकारः यथाशक्ति लघुः भवतु ।
127.0.0.1:6379> bgrewriteaof इति
Background append केवलं सञ्चिकापुनर्लेखनं आरब्धम्
# यदा लॉग् BGREWRITEAOF भवति,यदिपुनः लिखने पर न-उपेण्ड्फ्सिंकyes इति सेट् कुर्वन्तु, यस्य अर्थः अस्ति यत् नूतनाः लेखनक्रियाः fsync इत्यनेन सह समन्वयिताः न भविष्यन्ति, अपितु केवलं अस्थायीरूपेण बफरमध्ये संगृहीताः भविष्यन्ति । , डिस्क IO संचालनविग्रहं परिहरितुं, लेखनपूर्वं यावत् पुनर्लेखनं समाप्तं न भवति तावत् प्रतीक्षन्तु । Redis मध्ये पूर्वनिर्धारितं न अस्ति
no-appendfsync-on-rewrite सं
# यदा अन्तिम-लॉग-पुनर्लेखनस्य समये वर्तमान-AOF-सञ्चिका-आकारः AOF-सञ्चिकायाः आकारात् द्विगुणः भवति, तदा BGREWRITEAOF-क्रिया भवति ।
स्वतः-aof-पुनर्लेखन-प्रतिशत 100
टिप्पणी : १.
100सन्दर्भयतिaofसञ्चिकावृद्धिः अनुपातः अन्तिमपुनर्लेखनस्य तुलने वर्तमानस्य AOF सञ्चिकायाः वृद्धि-अनुपातं निर्दिशति ।,100द्विगुण इति
#Reids प्रथमवारं आरब्धस्य लघुसञ्चिकायाः आकारस्य कारणेन नित्यं BGREWRITEAOF इत्यस्य परिहाराय BGREWRITEAOF आदेशं निष्पादयितुं वर्तमानस्य AOF सञ्चिकायाः न्यूनतमं मूल्यम्
स्वतः-aof-पुनर्लेखन-मिनट-आकार 64mb
192.168.9.236:7001> info स्मृति
used_memory:1210776 #प्रयुक्तस्मृतेः आकारः,बाइट् इत्यत्र
used_memory_human:1.15M # एककेन सह प्रदर्शयतु,in म
used_memory_rss:7802880 # प्रचालनतन्त्रस्य दृष्ट्या redis कियत् स्मृतिम् आकर्षयति?
used_memory_rss_human:7.44M # एककेन सह प्रदर्शयतु
maxmemory:1073741824 # अधिकतम स्मृति आकार
maxmemory_human:1.00G # यूनिट् सह प्रदर्शयतु
maxmemory-नीति: पुनःप्रयोगस्य रणनीतिः
Ø अस्थिर-लरु: अनुमन्यते रेडिस् सम्पूर्णदत्तांशसमूहात् न्यूनतमं अद्यतनं प्रयुक्तं चिनुत कुंजी लुप्
Ø अस्थिर-ttl:तदनुसारम्कुंजीसमाप्त्यर्थं समाप्तिकालः
Ø अस्थिर-यादृच्छिक: निर्धारितसमाप्तिसमयेन सह दत्तांशसङ्ग्रहात् निष्कासनार्थं यादृच्छिकरूपेण आँकडानां चयनं कुर्वन्तु;
Ø सर्वकीया-लरु:उपयुञ्जताम् एलआरयू एल्गोरिदम् सर्वेभ्यः दत्तांशसमूहेभ्यः दत्तांशं समाप्तं करोति;
Ø allkeys-यादृच्छिकम्: दत्तांशसङ्ग्रहात् निष्कासनार्थं यादृच्छिकरूपेण आँकडानां चयनं कुर्वन्तु;
Ø noeviction: दत्तांशस्य उन्मूलनं निष्क्रियं कुर्वन्तु (पूर्वनिर्धारितमूल्यम्)
टिप्पणी : १.
कीलस्य अवधिसमाप्तिसमयं सेट् कुर्वन्तु
समाप्ति v1 10
v1 इत्यस्य अवधिः १० सेकेण्ड् अस्ति
टिप्पणी : १.
कदा रेडिस् स्मृतिदाबस्य कारणेन एकं पुनः प्राप्तुं आवश्यकता कुंजी घटकः,रेडिस् प्रथमं विचारं प्राचीनतमदत्तांशस्य पुनः प्रयोगः न करणीयः, अपितु न्यूनतया अद्यतनतया प्रयुक्तानां दत्तांशस्य पुनः प्रयोगः करणीयः । कुंजी अवधिः समाप्तः भवितुं प्रवृत्तः वा कुंजी एकं यादृच्छिकरूपेण चिनोतु कुंजी, दत्तांशसमूहात् निष्कासितम्
requirepass कीवर्ड अन्वेष्टुम्, तदनन्तरं गुप्तशब्दः पूर्वनिर्धारितरूपेण टिप्पणीकृतः अस्ति, अर्थात् पूर्वनिर्धारितरूपेण कोऽपि गुप्तशब्दः आवश्यकः नास्ति, यथा ।
टिप्पणीं उद्घाट्य स्वस्य गुप्तशब्दरूपेण सेट् कृत्वा पुनः आरभत
redis इत्यनेन सह सम्बद्ध्य निम्नलिखित आदेशं निष्पादयितुं redis-cli इत्यस्य उपयोगं कुर्वन्तु
config set requirepass 123456
निष्पादनस्य समाप्तेः अनन्तरं पुनः आरम्भस्य आवश्यकता नास्ति यदा भवन्तः क्लायन्ट् तः निर्गत्य पुनः प्रवेशं कुर्वन्ति तदा भवन्तः स्वस्य गुप्तशब्दं प्रविष्टुं प्रवृत्ताः भविष्यन्ति ।
[root@localhost bin]# ./redis-cli -a 123456
[root@localhost bin]# ./redis-cli127.0.0.1:6379> auth 123456
[root@localhost bin]# ./redis-cli -a 123456 shutdown
1) विन्याससञ्चिकां परिवर्त्य सेट् कृतं गुप्तशब्दं स्थायिरूपेण प्रभावी भविष्यति;
२) विन्याससञ्चिकायां सेट् कृतं गुप्तशब्दं परिवर्तयितुं प्रभावी भवितुं पुनः आरम्भस्य आवश्यकता भवति
३) आदेशस्य प्राथमिकता विन्याससञ्चिकायाः प्राथमिकतायाः अपेक्षया अधिका भवति