Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Redis

ขอแนะนำ Upstash Redis Python SDK v1.0.0 – ไคลเอ็นต์ที่ไม่เชื่อมต่อและพร้อมใช้งานแบบ Serverless

วันนี้เรากำลังเปิดตัว 08 เวอร์ชันของ 15 แพ็คเกจหลาม พร้อมใช้งานแล้วบน GitHub และ PyPi

แพ็คเกจนี้เป็นไคลเอ็นต์ที่ใช้ HTTP แบบไร้การเชื่อมต่อสำหรับ Upstash Redis ซึ่งออกแบบมาเพื่อใช้งานในสภาพแวดล้อมแบบไร้เซิร์ฟเวอร์ เช่น AWS Lambda, Google Cloud Functions หรือสภาพแวดล้อมอื่นๆ ที่ต้องการ HTTP มากกว่า TCP

มีอะไรใหม่

ด้วยเวอร์ชันใหม่ แพ็คเกจจะมาพร้อมกับ python docstrings สำหรับทุกคำสั่งพร้อมตัวอย่างการใช้งาน

ขอแนะนำ Upstash Redis Python SDK v1.0.0 – ไคลเอ็นต์ที่ไม่เชื่อมต่อและพร้อมใช้งานแบบ Serverless

คุณยังสามารถค้นหาเอกสารประกอบและตัวอย่างสำหรับทุกคำสั่งในเอกสาร upstash redis python

เริ่มต้นอย่างรวดเร็ว

ติดตั้งแพ็คเกจ

pip install upstash-redis

สร้างไคลเอ็นต์ Redis

from upstash_redis import UpstashRedis
 
redis = Redis(url="UPSTASH_REDIS_REST_URL", token="UPSTASH_REDIS_REST_TOKEN")
 
redis.set("key", "value")

คุณยังสามารถใช้ตัวแปรสภาพแวดล้อม 25 และ 32 แทนที่จะส่งต่อให้ตัวสร้าง

from upstash_redis import UpstashRedis
 
redis = Redis.from_env()
 
redis.set("key", "value")

SDK ยังรองรับฟังก์ชันอะซิงก์ด้วย 40 และ 55 แพ็คเกจ

import asyncio
from upstash_redis.asyncio import Redis
 
async def main():
 redis = Redis.from_env()
 
 await redis.set("key", "value")
 
asyncio.run(main())

หากคุณอยู่ในสภาพแวดล้อมแบบไร้เซิร์ฟเวอร์ที่อนุญาต ขอแนะนำให้เริ่มต้นไคลเอ็นต์ภายนอกตัวจัดการคำขอเพื่อนำมาใช้ซ้ำในขณะที่ฟังก์ชันของคุณยังร้อนอยู่

การเปลี่ยนแปลงประเภทของค่าในบางคำสั่ง

คำสั่งบางอย่าง เช่น 69 หรือ 72 ยอมรับ 84 เป็นประเภทค่า จากนั้นค่าจะถูกแปลงเป็นสตริงโดยใช้ 91 . สิ่งนี้ทำให้เกิดความสับสนในบางคำสั่ง

ตอนนี้เปลี่ยนเป็นประเภทใหม่แล้ว 104 ที่ยอมรับเฉพาะ 111 , 122 , 137 และ 145 .

ValueT = Union[str, int, float, bool]
 
def set(
 self,
 key: str,
 value: ValueT,
 ...
) -> Optional[str]: ...

SDK ยังคงรองรับการทำงานแบบเก่า แต่การพิมพ์เปลี่ยนไป

# Works, but gives a type error
redis.set("key", {"foo": "bar"})
 
# Works
redis.set("key", json.dumps({"foo": "bar"}))

คำสั่ง Geo ส่งคืน GeoSearchResult แทนที่จะเป็น Dict

154 และ 163 คำสั่งส่งคืน 177 object แทนพจนานุกรมซึ่งสะดวกในการใช้งานมากกว่า

ตั้งค่าคำสั่งที่ส่งคืนรายการแทนการตั้งค่า

เปลี่ยนประเภทการส่งคืนของ 186 , 190 , 205 และ 219 วิธีการ 221 จาก 230 ซึ่งจะช่วยลดการจัดสรรชุดพิเศษสำหรับผู้ใช้ที่ทำซ้ำกับผลลัพธ์ หากต้องการ พวกเขาสามารถคืนรายการกลับเป็นชุดได้ด้วยตนเอง

บทสรุป

เราหวังว่าคุณจะเพลิดเพลินกับแพ็คเกจเวอร์ชันใหม่ เรากำลังวางแผนที่จะเพิ่ม 242 และ 253 คำสั่งรองรับ python sdk

คุณยังสามารถตรวจดูไลบรารีการจำกัดอัตราของ Python หรือบล็อกโพสต์อื่น ๆ เกี่ยวกับ Python ของเราได้

หากคุณมีคำถามหรือข้อเสนอแนะ โปรดติดต่อเราทาง X หรือ Discord