คำถามติดแท็ก redis

Redis เป็นที่เก็บคีย์ - ค่าแบบโอเพ่นซอร์สที่ปรับขนาดได้สูงซึ่งโดยทั่วไปเรียกว่า "ฐานข้อมูล NoSQL"

3
SElinux: อนุญาตให้ httpd เชื่อมต่อกับพอร์ตเฉพาะ
ระบบของฉันใช้งาน CentOS 6.4 ด้วย apache2.2.15 SElinux บังคับใช้และฉันพยายามเชื่อมต่อกับอินสแตนซ์ในพื้นที่ของ redis ผ่านแอพ python / wsgi ของฉัน ฉันได้รับข้อผิดพลาด 13 สิทธิ์ถูกปฏิเสธ ฉันสามารถแก้ไขได้ผ่านคำสั่ง: setsebool -P httpd_can_network_connect อย่างไรก็ตามฉันไม่ต้องการให้ httpd เชื่อมต่อกับพอร์ต tcp ทั้งหมดได้อย่างแน่นอน ฉันจะระบุพอร์ต http / เครือข่ายที่อนุญาตให้เชื่อมต่อได้อย่างไร ถ้าฉันสามารถสร้างโมดูลเพื่ออนุญาตให้ httpd เชื่อมต่อกับพอร์ต 6379 (redis) หรือ tcp ใด ๆ บน 127.0.0.1 นั่นจะเป็นสิ่งที่ดีกว่า ไม่แน่ใจว่าทำไมความหวาดระแวงของฉันถึงแข็งแรงมากในเรื่องนี้ แต่เฮ้ ... ใครรู้บ้าง


1
Redis Cluster: (ข้อผิดพลาด) ย้ายแล้ว
ฉันมี Redis คลัสเตอร์ที่มีโหนดต่อไปนี้: 192.168.0.14:6379 master (slots from 0 to 16383) 192.168.0.15:6379 slave (slots from 0 to 16383) 192.168.0.16:6379 master (without slots) เอกสารอธิบายว่าโหนดใด ๆ สามารถเปลี่ยนเส้นทางเคียวรีไปยังโหนดที่เหมาะสม แต่ฉันไม่สามารถเปลี่ยนเส้นทางคำขอจากโหนดหลัก 192.168.0.16:6379 นี่คือสิ่งที่ฉันพยายาม: 192.168.0.16:6379> set myKey myValue (error) MOVED 16281 192.168.0.14:6379 192.168.0.16:6379> get myKey (error) MOVED 16281 192.168.0.14:6379 มันไม่ได้เขียนหรืออ่าน เมื่อฉันพยายามที่จะรับ "myKey" จาก 192.168.0.14:6379 มันจะแสดงต่อไป: 127.0.0.1:6379> get …

1
Scaling Logstash (พร้อม Redis / ElasticSearch)
ในคลัสเตอร์ที่มีเซิร์ฟเวอร์มากกว่า 12 centos 5.8 ฉันปรับใช้ logstash โดยใช้ native logstash shipper ซึ่งส่ง/var/log/*/*.logกลับไปยังเซิร์ฟเวอร์ logstash ส่วนกลาง เราพยายามใช้ rsyslogd เป็นผู้ส่ง แต่เนื่องจากข้อผิดพลาดในโมดูล ImFile ของ rsyslogd หากปลายทางระยะไกลไม่ตอบกลับบันทึกจะซ้อนกันในหน่วยความจำ ขณะนี้เรากำลังใช้ Redis เป็นกลไกการขนส่งดังนั้น logstash01 จึงมี redis ทำงานอยู่ภายในเครื่องซึ่งเชื่อมโยงกับ IP สำหรับ VLAN สำหรับบันทึกเหล่านี้ ดังนั้น logstash-shipper ส่งไปยัง redis เมื่อ logstash01 logstash01 ส่งไปยัง Elasticsearch ที่ทำงานในกระบวนการแยกต่างหาก นี่คือสิ่งที่เราเห็น Elasticsearch มี 141 กระทู้ที่ถูกบล็อก การรัดพาเรนต์ของ ElasticSearch แสดง: …

2
เคล็ดลับในการเพิ่มคำขอ Nginx ให้ได้มากที่สุด / วินาที?
ฉันกำลังสร้างแพคเกจการวิเคราะห์และข้อกำหนดของโครงการระบุว่าฉันต้องการการสนับสนุน 1 พันล้านครั้งต่อวัน ใช่ "พันล้าน" กล่าวอีกนัยหนึ่งคือไม่น้อยกว่า 12,000 ครั้งต่อวินาทีที่ยั่งยืนและโดยเฉพาะอย่างยิ่งบางห้องที่จะระเบิด ฉันรู้ว่าฉันจะต้องใช้เซิร์ฟเวอร์หลายเครื่องสำหรับเรื่องนี้ แต่ฉันพยายามที่จะเพิ่มประสิทธิภาพสูงสุดของแต่ละโหนดก่อนที่จะ "ทิ้งฮาร์ดแวร์เพิ่มเติม" ตอนนี้ฉันมีส่วนติดตามที่สำเร็จแล้วและได้รับการปรับปรุงให้ดีที่สุด ฉันสวยมากเพียงแค่บันทึกคำขอลงใน Redis (สำหรับการประมวลผลในภายหลังด้วย Hadoop) แอปพลิเคชั่นนี้คือ Python / Django ที่มี gunicorn สำหรับเกตเวย์ เซิร์ฟเวอร์ 2GB Ubuntu 10.04 Rackspace ของฉัน (ไม่ใช่เครื่องที่ใช้งานจริง) สามารถให้บริการไฟล์คงที่ประมาณ 1200 ไฟล์ต่อวินาที (ทำการเปรียบเทียบโดยใช้ Apache AB กับสินทรัพย์คงที่เดียว) ในการเปรียบเทียบหากฉันสลับลิงก์ไฟล์คงที่กับลิงก์ติดตามของฉันฉันยังได้รับประมาณ 600 คำขอต่อวินาที - ฉันคิดว่านี่หมายความว่าตัวติดตามของฉันได้รับการปรับให้เหมาะสมเพราะมันเป็นเพียงปัจจัย 2 ช้ากว่าการแสดงเนื้อหาแบบคงที่เดียวกัน ซ้ำแล้วซ้ำเล่า อย่างไรก็ตามเมื่อฉันเปรียบเทียบกับความนิยมหลายล้านครั้งฉันสังเกตเห็นบางสิ่ง - ไม่มีการใช้ดิสก์ - คาดว่าเป็นเพราะฉันได้ปิดบันทึก …

2
หลีกเลี่ยงการสลับกับ ElastiCache Redis
เราประสบปัญหาอย่างต่อเนื่องกับการสลับอินสแตนซ์ ElastiCache Redis ของเรา ดูเหมือนว่า Amazon จะมีการตรวจสอบภายในที่ไม่แน่นอนซึ่งแจ้งให้ทราบถึงการสลับการใช้งานและเพียงแค่รีสตาร์ทอินสแตนซ์ ElastiCache (ดังนั้นจึงสูญเสียรายการแคชทั้งหมดของเรา) นี่คือแผนภูมิของ BytesUsedForCache (สายสีน้ำเงิน) และ SwapUsage (เส้นสีส้ม) ในอินสแตนซ์ ElastiCache ของเราในช่วง 14 วันที่ผ่านมา: คุณสามารถดูรูปแบบของการใช้งาน swap ที่เพิ่มขึ้นซึ่งดูเหมือนว่าจะกระตุ้นการรีบู๊ตอินสแตนซ์ ElastiCache ของเราซึ่งเราสูญเสียรายการแคชทั้งหมดของเรา (BytesUsedForCache ลดลงเป็น 0) แท็บ 'เหตุการณ์แคช' ของแดชบอร์ด ElastiCache ของเรามีรายการที่เกี่ยวข้อง: รหัสที่มา | ประเภท | วันที่ | เหตุการณ์ cache-instance-id | แคชคลัสเตอร์ อ. ก.ย. 22 07:34:47 GMT-400 2015 | …

3
ระบบ Linux บางระบบช้ามากเมื่อ Redis โหลดชุดข้อมูลขนาดใหญ่
ฉันได้รับรายงานจากผู้ใช้ Redis และฉันไม่แน่ใจว่าจะตอบอย่างไรเนื่องจากฉันไม่ใช่ผู้เชี่ยวชาญในพื้นที่ของ Linux และตัวกำหนดตารางเวลาอย่างไรก็ตามเรา (ในฐานะโครงการ Redis) จำเป็นต้องคิดประเด็นนี้โดยเฉพาะ ในอนาคตเช่นเดียวกับ Redis Cluster เราจะมีอินสแตนซ์ Redis จำนวนมากที่ทำงานพร้อมกันในกล่องเดียว ดังนั้นฉันขอความช่วยเหลือที่นี่ ปัญหา: เคอร์เนล: "Linux redis1 2.6.32-305-ec2 # 9-Ubuntu SMP พฤ. 15 เม.ย. 08:05:38 UTC 2010 x86_64 GNU / Linux" RAM ว่างจำนวนมากไม่มีกระบวนการอื่นที่ทำ I / O อย่างมีนัยสำคัญ สิ่งสำคัญทำงานบนอินสแตนซ์ขนาดใหญ่ EC2 ไม่ใช่เซิร์ฟเวอร์จริง ฉันไม่เคยเห็นอะไรแบบนี้มาก่อนในสภาพแวดล้อมที่ไม่มีการจำลองเสมือน อินสแตนซ์ EC2 คือ: "สูงหน่วยความจำขนาดใหญ่พิเศษอินสแตนซ์ 17.1 GB หน่วยความจำ …

1
ทำไม systemctl ไม่เริ่ม redis-server บน CentOS 7
ฉันได้ติดตั้ง redis ใหม่ในกล่อง CentOS 7 ใหม่ แต่ไม่สามารถเริ่มได้โดยใช้ systemctl ติดตั้งแบบนี้: rpm -i http://dl.fedoraproject.org/pub/epel/beta/7/x86_64/epel-release-7-0.2.noarch.rpm yum install redis ความพยายามที่จะเริ่มต้นเช่นนี้ดูเหมือนจะล้มเหลวในความเงียบ (ไม่มีผลลัพธ์): systemctl start redis-server # also tried redis-server.service นี่คือสิ่งที่เกิดขึ้นเมื่อพยายามเชื่อมต่อ: redis-cli Could not connect to Redis at 127.0.0.1:6379: Connection refused not connected> แต่การเริ่มต้นทำงานด้วยตนเอง: [root@redis ~]# redis-server /etc/redis.conf [root@redis ~]# redis-cli 127.0.0.1:6379> ใครรู้ว่ามีอะไรผิดปกติหรือวิธีการแก้ปัญหานี้? UPDATE: ผลลัพธ์ของ/var/log/redis/redis.logด้านล่าง Btw …

3
node.js, Mongodb, Redis, การลดลงของประสิทธิภาพของ Ubuntu ในการผลิต, RAM ฟรี, CPU 100%
ตามที่ชื่อคำถามแสดงว่าฉันมีเวลายากที่จะทราบว่าสามารถปรับปรุงอะไรในแอปพลิเคชันของฉัน (หรือปรับในระบบปฏิบัติการ, Ubuntu) เพื่อให้ได้ประสิทธิภาพที่ยอมรับได้ แต่ก่อนอื่นฉันจะอธิบายสถาปัตยกรรม: เซิร์ฟเวอร์ front-end เป็นเครื่อง 8 คอร์ที่มี 8 gigs RAM ใช้งาน Ubuntu 12.04 แอปพลิเคชั่นเขียนทั้งหมดใน javascript และทำงานใน node.js v 0.8.22 (เนื่องจากโมดูลบางตัวดูเหมือนจะบ่นกับโหนดเวอร์ชั่นใหม่กว่า) ฉันใช้ nginx 1.4 ถึงปริมาณการรับส่งข้อมูลพร็อกซี HTTP จากพอร์ต 80 และ 443 ถึง 8 คนทำงานโหนดที่จัดการ และเริ่มใช้โหนดคลัสเตอร์ api ฉันใช้ socket.io เวอร์ชันล่าสุด 0.9.14 เพื่อจัดการการเชื่อมต่อ websocket ซึ่งฉันได้เปิดใช้งานเฉพาะ websockets และ xhr-polling เป็นการขนส่งที่มีอยู่ ในเครื่องนี้ฉันยังใช้งาน Redis …

3
ติดตั้งใหม่บน centos 6.5
ฉันพยายามติดตั้ง Redis บน centos 6.5 (x64) ด้วยบรรทัดต่อไปนี้: yum install redis แต่ฉันได้รับหน้าจอต่อไปนี้: [root@NodeJs ~]# yum install redis Loaded plugins: fastestmirror Setting up Install Process Loading mirror speeds from cached hostfile * base: nl.mirror.eurid.eu * epel: nl.mirror.eurid.eu * extras: mirror.denit.net * updates: nl.mirror.eurid.eu Resolving Dependencies --> Running transaction check ---> Package redis.x86_64 …
10 centos  centos6  redis 

2
อัปเกรดจาก Redis 2.8.19 เป็น 3.0.1
ปัจจุบันฉันติดตั้ง Redis 2.8.19 แล้ว แต่ฉันต้องการอัพเกรดเป็นรุ่นล่าสุดที่เสถียร 3.0.1 เดิมทีฉันดาวน์โหลดบีบอัดและเรียบเรียง 2.8.9 อะไรคือวิธีที่แนะนำในการอัพเกรดจาก 2.8.19 เป็น 3.0.1 หากคุณเคยรวบรวมเหมือนที่ฉันมี ฉันพยายามค้นหาแหล่งข้อมูลเกี่ยวกับสิ่งนี้ แต่กำลังจะเกิดขึ้นในระยะสั้น ขอบคุณล่วงหน้า.
9 redis 

4
เหตุใดจึงมีการ จำกัด รายงานซ้ำถึง 1024 ไฟล์แม้หลังจากอัปเดตเป็น limit.conf แล้ว
ฉันเห็นข้อผิดพลาดนี้ที่ด้านบนของไฟล์ redis.log ของฉัน: ไฟล์ที่เปิดสูงสุดในปัจจุบันคือ 1024 maxclients ถูกลดเหลือ 4064 เพื่อชดเชย ulimit ต่ำ ฉันได้ทำตามขั้นตอนเหล่านี้เพื่อจดหมาย (และรีบูต): ยิ่งกว่านั้นฉันเห็นสิ่งนี้เมื่อฉันทำงานulimit: ubuntu@ip-XX-XXX-XXX-XXX:~$ ulimit -n 65535 ข้อผิดพลาดนี้กว้างขวางหรือไม่ ถ้าไม่ฉันต้องทำอะไรในขั้นตอนอื่น ฉันกำลังใช้ Redis 2.8.13 (ส่วนปลายของต้นไม้) บน Ubuntu LTS 14.04.1 (อีกครั้งที่ส่วนปลายของต้นไม้) นี่คือข้อมูลผู้ใช้: ubuntu@ip-XX-XXX-XXX-XXX:~$ ps aux | grep redis root 1027 0.0 0.0 66328 2112 ? Ss 20:30 0:00 sudo -u ubuntu /usr/local/bin/redis-server …
9 redis  ulimit 
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.