《Django 5 By Example》阅读笔记:p614-p644

《Django 5 By Example》学习第 22 天,p614-p644 总结,总计 31 页。

一、技术总结

1.功能: students 应用

2.缓存

Django自带的缓存有:

(1)backends.memcached.PyMemcacheCache

(2) backends.redis.RedisCache

(3)backends.db.DatabaseCache

(4)backends.filebased.FileBasedCache

(5)backends.locmem.LocMemCache

(6)backends.dummy.DummyCache

For optimal performance, use a memory-based cache backend like Memcached or Redis,

since accessing memory is faster than accessing data from databases of files(为了获得最佳性能,请使用基于内存的缓存后端,如Memcached或Redis,因为访问内存比从数据库或文件访问数据要快)

其实我很想知道既然 Memcached 和 Redis 都是基于内存,那么该怎么选择呢?很遗憾,作者选择了 Memcached(Memcached is a popular high-performance, memory-based cache server. We are going to use Memcached and the PyMemcacheCache Memcached backend.),但是为什么没有选择 Redis呢(当然,作者第 7 章也使用了 Redis 进行缓存)?作者没有进行比较说明。

Python中使用的 Memcached 客户端是pymemcache 包。

3.memcached

(1)docker compose 部署

python 复制代码
 memcached:

   image: memcached:latest
    container_name: memcached
    ports:
      - "11211:11211"
    restart: always
    command: memcached -m 64 -vv

作者使用的是 docker run 进行部署,每次看到这个,我就心生怨念,在实际业务中是不可能这样启动容器的,因为这容器多了之后非常不好管理。这里补充一下使用 docker compose 的方式启动容器。

二、英语总结(生词:1)

1.entail

(1)entail: en-("make") + taile("legal limitation")

vt. to involve sth(涉及,牵涉)。p628, Processing HTTP requests to your web application usually entails database access, data manipulation, and template rendering。

2.granularity

(1)granularity: granum("grain(颗粒,谷粒), seed") + -arity(a suffix that forms nouns)

u. refers to the state or quality of being made up of small, distinct parts---like grains。p628, Django includes a robust cache system that allows you to cache data with different levels of granularity(Django包含一个强大的缓存系统,允许你缓存不同颗粒度级别的数据)。

3.allot

(1)allot: ad-("to") + loter("lot")

vt. to give a share of sth for a particular purpose(分配,分派)。p629, Memcached runs in memory, and it is allotted a specified amount of RAM。

三、其它

完结,撒花。明天出读后感。

四、参考资料

1. 编程

(1) Antonio Melé,《Django 5 By Example》:https://book.douban.com/subject/37007362/

2. 英语

(1) Etymology Dictionary:https://www.etymonline.com

(2) Cambridge Dictionary:https://dictionary.cambridge.org

欢迎搜索及关注:编程人(a_codists)

相关推荐
北斗落凡尘3 分钟前
LangGraph 入门实战(2)
python·langchain
ttod_qzstudio38 分钟前
Java 常用语法极简通关(五):类与对象——字段、方法、构造器、this 与 static
java·开发语言·python
jufeng13072 小时前
【系列:手搓自主 AI Agent:Hermes 架构原理剖析 · 第 1 篇】
人工智能·python·架构·agent
月光船幽幽3 小时前
影子模式下保护 logits 不被修改
人工智能·python·算法
_oP_i5 小时前
python 后缀 mjs文件
开发语言·python
北斗落凡尘5 小时前
如何使用LangGraph(1)
python·langchain
Livia要学习6 小时前
Python装饰器
开发语言·python
大模型丫丫7 小时前
LangChain4j:Java 生态的 AI 应用开发利器
java·人工智能·python
circuitsosk7 小时前
向量数据库选型与性能压测:Milvus、Pinecone、Chroma在真实业务下的对比
数据库·python·pinecone·milvus·向量数据库·chroma
雾时之林7 小时前
python--字符串
开发语言·python