<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[小朋友2滴偷偷的在写博客]]></title><description><![CDATA[记得双击么么哒]]></description><link>https://blog.youkuaiyun.com/ct2020129</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; ct2020129]]></copyright><item><title><![CDATA[Python可迭代对象、迭代器与生成器]]></title><link>https://blog.youkuaiyun.com/ct2020129/article/details/122766981</link><guid>https://blog.youkuaiyun.com/ct2020129/article/details/122766981</guid><author>ct2020129</author><pubDate>Tue, 01 Feb 2022 23:09:25 +0800</pubDate><description><![CDATA[1. 概念
1.1. iterable

可迭代对象，是可以使用for循环遍历的对象
实现__iter__()方法

注意，程序通过判断是否有声明__iter__()方法来确认对象是否为可迭代对象，但是得到的对象是否真的能执行for循环并不确定


string，list，map，set都算是iterable

1.2. iterator


迭代器是将可迭代对象添加了迭代遍历特性后转变而成的对象（可迭代对象的升级版）


同时实现__iter__()方法和__next__()方法


遍历结束需要抛出St]]></description><category></category></item><item><title><![CDATA[Python装饰器@property的原理]]></title><link>https://blog.youkuaiyun.com/ct2020129/article/details/122681130</link><guid>https://blog.youkuaiyun.com/ct2020129/article/details/122681130</guid><author>ct2020129</author><pubDate>Tue, 25 Jan 2022 10:56:47 +0800</pubDate><description><![CDATA[最初的声明方式

在没有@property修饰的情况下，需要分别声明get、set、delete函数，然后初始化property类，将这些方法加载进property中
class C持有property的实例化对象x
对外表现出来C().x时，实际上是调用C()中的x（property类）中设置的fset，fget，fdel，分别对应getx，setx，delx
C真正持有的x，是self._x被隐藏起来了

class C(object):
    def getx(self): 
        ret]]></description><category></category></item><item><title><![CDATA[2021-10-24]]></title><link>https://blog.youkuaiyun.com/ct2020129/article/details/120936617</link><guid>https://blog.youkuaiyun.com/ct2020129/article/details/120936617</guid><author>ct2020129</author><pubDate>Sun, 24 Oct 2021 17:00:05 +0800</pubDate><description><![CDATA[1024

]]></description><category></category></item><item><title><![CDATA[MongoDB ObjectId _id的默认生成方式，从pymongo源码解析]]></title><link>https://blog.youkuaiyun.com/ct2020129/article/details/115751587</link><guid>https://blog.youkuaiyun.com/ct2020129/article/details/115751587</guid><author>ct2020129</author><pubDate>Fri, 16 Apr 2021 14:27:51 +0800</pubDate><description><![CDATA[起因
最近发现有的同事在查询mongo的时候，使用_id进行排序，来查找某个时间之后的数据有多少条。一直没有留意_id的生成方式，才知道原来16进制_id是有序的，所以记录研究一下
经过
从python包中找到bson/objectid.py找到ObjectId类，先阅读一下init注释
class ObjectId(object):
    """这部分代码先跳过
    """

    def __init__(self, oid=None):
        """Initialize a new ]]></description><category></category></item><item><title><![CDATA[gRPC基础概念]]></title><link>https://blog.youkuaiyun.com/ct2020129/article/details/113716958</link><guid>https://blog.youkuaiyun.com/ct2020129/article/details/113716958</guid><author>ct2020129</author><pubDate>Sat, 06 Feb 2021 15:35:32 +0800</pubDate><description><![CDATA[使用API
从在一个proto文件中定义一个服务开始，gRPC提供了protocol buffer编译器插件可以用来生成服务端和客户端代码。gRPC使用者只需要在客户端调用这些API，在服务端实现对应API即可。

在服务端，需要实现RPC服务中定义的方法，并运行gRPC服务器来处理客户端的调用。gRPC的底层会对请求（requests）进行解码，执行服务端方法，然后再编码成响应数据。
在客户端，客户端拥有一个本地的对象成为stub，也可以成为client，它与服务一样实现了相同的方法。客户端可以将调用参数]]></description><category></category></item><item><title><![CDATA[Redis高并发下的读写锁]]></title><link>https://blog.youkuaiyun.com/ct2020129/article/details/113268376</link><guid>https://blog.youkuaiyun.com/ct2020129/article/details/113268376</guid><author>ct2020129</author><pubDate>Wed, 27 Jan 2021 20:02:46 +0800</pubDate><description><![CDATA[https://www.cnblogs.com/suyuan1573/p/6037066.html

]]></description><category></category></item><item><title><![CDATA[Python多继承的初始化方式]]></title><link>https://blog.youkuaiyun.com/ct2020129/article/details/112788585</link><guid>https://blog.youkuaiyun.com/ct2020129/article/details/112788585</guid><author>ct2020129</author><pubDate>Mon, 18 Jan 2021 16:51:47 +0800</pubDate><description><![CDATA[https://blog.youkuaiyun.com/RSstudent/article/details/108809921

]]></description><category></category></item><item><title><![CDATA[AWS知识点笔记]]></title><link>https://blog.youkuaiyun.com/ct2020129/article/details/110138781</link><guid>https://blog.youkuaiyun.com/ct2020129/article/details/110138781</guid><author>ct2020129</author><pubDate>Thu, 26 Nov 2020 11:32:26 +0800</pubDate><description><![CDATA[Interface Endpoint
Gateway Endpoint




What
Elastic Network Interface with a Private IP
A gateway that is target for a specific route


How
Uses DNS entries to redirect traffic
Uses prefix lists in the route table to redirect traffic


Which services...]]></description><category></category></item><item><title><![CDATA[AttributeError: module ‘platform‘ has no attribute ‘linux_distribution‘]]></title><link>https://blog.youkuaiyun.com/ct2020129/article/details/109905233</link><guid>https://blog.youkuaiyun.com/ct2020129/article/details/109905233</guid><author>ct2020129</author><pubDate>Sat, 21 Nov 2020 19:11:00 +0800</pubDate><description><![CDATA[背景
使用windows server linux（WSL），安装pip
apt install python3-pip之后要通过pip3 install xxx的时候出现错误
原因
由于WSL中的python3.8，已经不存在platform.linux_distribution()方法。而通过apt安装的pip版本为8.1.1，需要进行更新
解决方法
sudo apt remove python3-pip
sudo python3.8 -m easy_install pip

...]]></description><category></category></item><item><title><![CDATA[AWS认证解决方案架构助理 - AWS Lambda笔记]]></title><link>https://blog.youkuaiyun.com/ct2020129/article/details/108976822</link><guid>https://blog.youkuaiyun.com/ct2020129/article/details/108976822</guid><author>ct2020129</author><pubDate>Mon, 09 Nov 2020 20:49:46 +0800</pubDate><description><![CDATA[计算服务的演进

AWS公有云基础设施
容器Containers
Serverless（物理基础设施交由AWS进行托管，只需要关注代码逻辑）

资源预配置和使用率
可靠性和容错
扩展性
运维和管理



事件驱动 Event Driven

事件驱动 -&gt; 持续自动扩展（λ）-&gt; 按使用量付费（代码执行时间，使用力度，etc.）
代码只在需要的时候执行，并自动缩放

Lambda使用场景


S3 + λ = Dynamic data ingestion
图片压缩，视频转码，文建索引，日志处理，]]></description><category></category></item><item><title><![CDATA[Docker四种网络模式]]></title><link>https://blog.youkuaiyun.com/ct2020129/article/details/109527709</link><guid>https://blog.youkuaiyun.com/ct2020129/article/details/109527709</guid><author>ct2020129</author><pubDate>Fri, 06 Nov 2020 11:00:15 +0800</pubDate><description><![CDATA[https://www.jianshu.com/p/22a7032bb7bd

]]></description><category></category></item><item><title><![CDATA[Python 调用ctypes报错 free(): invalid pointer，double free or corruption (!prev)]]></title><link>https://blog.youkuaiyun.com/ct2020129/article/details/108833642</link><guid>https://blog.youkuaiyun.com/ct2020129/article/details/108833642</guid><author>ct2020129</author><pubDate>Sun, 27 Sep 2020 18:23:49 +0800</pubDate><description><![CDATA[Issues for reference.
tensorflow#6968
mxnet#13710
tensorflow#8717
Introduction.
google gperftools tcmalloc

]]></description><category></category></item><item><title><![CDATA[Python docker镜像对比]]></title><link>https://blog.youkuaiyun.com/ct2020129/article/details/108830073</link><guid>https://blog.youkuaiyun.com/ct2020129/article/details/108830073</guid><author>ct2020129</author><pubDate>Sun, 27 Sep 2020 16:03:08 +0800</pubDate><description><![CDATA[https://aws.amazon.com/cn/blogs/china/choose-the-best-docker-image-for-your-python-application/

]]></description><category></category></item><item><title><![CDATA[Python JWT Authentication]]></title><link>https://blog.youkuaiyun.com/ct2020129/article/details/108289400</link><guid>https://blog.youkuaiyun.com/ct2020129/article/details/108289400</guid><author>ct2020129</author><pubDate>Sat, 29 Aug 2020 00:23:42 +0800</pubDate><description><![CDATA[https://auth0.com/docs/quickstart/backend/python/01-authorization#validate-access-tokens



]]></description><category></category></item><item><title><![CDATA[Python 日志最佳实践]]></title><link>https://blog.youkuaiyun.com/ct2020129/article/details/108243287</link><guid>https://blog.youkuaiyun.com/ct2020129/article/details/108243287</guid><author>ct2020129</author><pubDate>Wed, 26 Aug 2020 16:58:31 +0800</pubDate><description><![CDATA[https://docs.python.org/3.8/howto/logging-cookbook.html
]]></description><category></category></item><item><title><![CDATA[Python 给类成员取别名]]></title><link>https://blog.youkuaiyun.com/ct2020129/article/details/108006612</link><guid>https://blog.youkuaiyun.com/ct2020129/article/details/108006612</guid><author>ct2020129</author><pubDate>Fri, 14 Aug 2020 16:00:13 +0800</pubDate><description><![CDATA[https://stackoverflow.com/questions/4017572/how-can-i-make-an-alias-to-a-non-function-member-attribute-in-a-python-class/4017591
]]></description><category></category></item><item><title><![CDATA[Python 对象转换为字典或json的方法]]></title><link>https://blog.youkuaiyun.com/ct2020129/article/details/108006520</link><guid>https://blog.youkuaiyun.com/ct2020129/article/details/108006520</guid><author>ct2020129</author><pubDate>Fri, 14 Aug 2020 15:56:38 +0800</pubDate><description><![CDATA[https://jenrey.blog.youkuaiyun.com/article/details/86622958

]]></description><category></category></item><item><title><![CDATA[Sanic与FastAPI性能对比]]></title><link>https://blog.youkuaiyun.com/ct2020129/article/details/107467344</link><guid>https://blog.youkuaiyun.com/ct2020129/article/details/107467344</guid><author>ct2020129</author><pubDate>Mon, 20 Jul 2020 16:52:15 +0800</pubDate><description><![CDATA[https://www.jianshu.com/p/89dc09e15891

]]></description><category></category></item><item><title><![CDATA[AWS认证解决方案架构助理 - AWS CloudFront笔记]]></title><link>https://blog.youkuaiyun.com/ct2020129/article/details/107381502</link><guid>https://blog.youkuaiyun.com/ct2020129/article/details/107381502</guid><author>ct2020129</author><pubDate>Thu, 16 Jul 2020 14:51:09 +0800</pubDate><description><![CDATA[Content Delivery Network(CDN)
Creates cached copies of your website at various edge locations around the world.
Content Delivery Network (CDN)
A CDN is a distributed network of servers which delivers web pages and content to users based on their geographic]]></description><category></category></item><item><title><![CDATA[EC2安装Docker报错：Requires: container-selinux]]></title><link>https://blog.youkuaiyun.com/ct2020129/article/details/107337759</link><guid>https://blog.youkuaiyun.com/ct2020129/article/details/107337759</guid><author>ct2020129</author><pubDate>Tue, 14 Jul 2020 14:39:20 +0800</pubDate><description><![CDATA[https://stackoverflow.com/questions/60690568/unable-to-install-docker-on-aws-linux-ami

]]></description><category></category></item></channel></rss>