Dev's Logging

Welcome to my blog !


What’s the Difference Between TCP and UDP?

Published at March 18, 2019 ·  1 min read

简单介绍 tcp 和 udp 的不同,一个做校验保证数据可达且有序,另一个则为了传输速度只管发送不关心是否已达,常用在游戏和直播领域,追求较大的传输速度和带宽。 What’s the Difference Between TCP and UDP?...

Kubernetes autoscaling based on custom metrics without using a host port

Published at March 18, 2019 ·  1 min read

k8s in action 作者写的一篇关于 hpa 的文章,这篇文章在书中有较为详细的版本,其中需要注意的是,在使用 metrics server 时一定要注意 namespace 的一致性 Kubernetes autoscaling based on custom metrics without using a host port...

Building High Performance Django Systems

Published at March 18, 2019 ·  1 min read

用 Django 打造高性能的服务器,对于 Django 的应用,性能的瓶颈主要集中在 database 层,因此这里主要涉及的是 Django 中 orm 的正确高效的用法 Building High Performance Django Systems...

How we increased our Facebook Ads CTR by 600%

Published at March 15, 2019 ·  1 min read

如何利用 Facebook pixel 的 retargeting 技术提高 ctr 降低推广成本的文章,虽然能够理解 Facebook pixel retargeting 的技术,但没太理解 pixelme 的价值以及技术实现,仅仅提供短链以及点击分析? How we increased our Facebook Ads CTR by 600%...

WooyunDota/DroidDrops

Published at March 14, 2019 ·  1 min read

关于 ssl spinning 的一个完整详细的讲解,在未了解之前以为只有客户端与服务端均需预先存储一份证书以供通信校验。 WooyunDota/DroidDrops...

Get THREE times the capacity for your Kubernetes Cluster for FREE! Too good to be true?

Published at March 13, 2019 ·  1 min read

非常有意思的一个观点,在了解 k8s 之前其实也有意识到,通过抢占 aws 或 gcp 大量的抢占式实力进行数据计算可有效的降低服务器的成本,唯独缺的是有像 k8s 这样的集群管理编排工具。 Get THREE times the capacity for your Kubernetes Cluster for FREE! Too good to be true?...

Service Discovery in a Microservices Architecture - NGINX

Published at March 13, 2019 ·  1 min read

在面向服务的系统架构设计中,具体某个节点的 IP 会是随时可变的,这时就需要有一个很好的服务注册和发现机制,将客户端发送来的请求转发给当前存活可用的节点。负载均衡便是一个很简单的案例。在 k8s 中,dns 结合 etcd 的使用则是一个较为完整的案例。 Service Discovery in a Microservices Architecture - NGINX...

百万 Go TCP 连接的思考: epoll方式减少资源占用

Published at March 11, 2019 ·  1 min read

百万 TCP 链接的文章,通过 epoll 减少资源开销,在设计思路上与 redis 类似,虽然单线程,但并不是瓶颈。 百万 Go TCP 连接的思考: epoll方式减少资源占用...

Tags

abcs accept acid activemq affinity algorithm allocation android array async aws b+tree b-tree backoff benchmark best-practices bfs big-o bigquery bind bitcount blog break broker bubble buffer cache cap cert cgroups channel citus class classmethod closure closures cluster concurrency config consistency consumer container context cookie cors crawler cronjob csrf ctr data-science data-structure database datadog dataflow datascience decorator deepcopy defer dfs distributed django dns docker double-shipping drf ecosia elastic-search enumerate epoll equal errgroup escaping event extra fabric2 facebook-pixel financial-report flask flutter forward-proxy freelance frontend frp garbage-collector gc gcp generator gesture get gil git golang goroutine graphql ha handbook haproxy hash hash-slot hashring hashtable hpa http http-auth http-proxy http_proxy https index init innodb instagram intention-lock intergration interview ios is javascript jinja2 jobboard json jwt k8s kafka kibana kqueue label lambda layer4 layer7 lean levels.io linked-list linux list listen loadbalancer lock logs long-tail lru marketing master matplotlib memory merge metaclass metaprogramming metrics metrics-server microservices mitm mobile model mongo mongoose mq myisam mysql namespace nat netflix network network-extension nginx nodejs nomad nosql notification npm oodesign openssl optimization orm osi pandas parallelism paramiko parkinglot patroni permission pg pipeline pixelme post postgresql postresql prefetch_related prerender private-key process proxy proxycommand put pvm python queue rabbitmq rbac react-native reactive reactjs rebase redis redis-cluster replication resource rest restfulapi retargeting retry revenue reverse-proxy rocketmq rsa rxswift saas scaffold scaleable search-engine security select seo serverless service session set shadosocks shadowsocks shard sharding shell shopify sigint signal sigterm singleton slack slave slow-query sniper sns socket socks5 source-code spa sql sqlalchemy sqs ssh ssl ssl-pinning stack startup state stateful stateless staticmethod string struct swift swiftui switch syscall system-design systemctl tcp tcp-proxy thread tmpreaper token traefik trustkit tunning type typeform udp userdefaults variable vc voidcallback vpn vuejs weak web web-development where widget with yarn zset 削峰 单例模式 宽索引 异步 看源码学-golang 窄索引 解耦 跨域 跳板机


Archives

2020 (6)
2019 (157)
0001 (5)