Datong's Random Thoughts

Partner at OpenResty Inc., open source contributor and pilot.

  • Home
  • About Me
NGINX

Data sharing in OpenResty

Throughout the course of writing Lua code that runs inside OpenResty, you will inevitably encounter situations that requires data sharing between Lua codes, NGINX workers. You may also encounter necessities to share data

Datong Sun Datong Sun
ZFS

Building a Low Cost Home NAS System on Linux

Background As a MacBook Pro user, I, like many others, suffered from the lack of internal storage in general. In particular, the rMBP that I uses daily has a merely 256 GB of

Datong Sun Datong Sun
Networking

RouterOS Meets Comcast IPv6

Preface I have recently moved from Iowa to California. When in school, I used to use the university provided Ethernet connection that easily runs to 1 Gbps Up/Dn. Moving to California means

Datong Sun Datong Sun
TLS

Making Certificates More Visible With Certificate Transparency

Certificate Transparency has been a popular term recently. Despite Google's hard effort on pushing every CA to adopt Certificate Transparency, the implications and technical details behind those two words are sometimes unclear. Hence,

Datong Sun Datong Sun
TLS

Getting Let's Encrypt Certificate for a Google App Engine Hosted Website

Let's Encrypt is a completely free Certificate Authority (CA) who distributed free and trusted TLS server certificates for website owners around the world to use. The process of using their certificate on a

Datong Sun Datong Sun
Security

HSTS Preloading: What it is and why do you need it

The Background When Internet was first designed, security was not the the primary focus. With dedicated connections between nodes, limited access and CPU power, encryption did not seemed so necessary at the beginning.

Datong Sun Datong Sun
epoll

The Implementation of epoll (4)

In this last part of The Implementation of epoll series, I will be explaining how epoll transfers events from kernel space to user space and how different triggering modes were implemented. This fifth

Datong Sun Datong Sun
epoll

The Implementation of epoll (3)

In the last two posts, I talked about how epoll works as a whole and how epoll receives new event notification from the monitored file descriptors. In this post, I will be talking

Datong Sun Datong Sun
epoll

The Implementation of epoll (2)

The ep_insert() Function ep_insert() is one of the most important functions within the epoll implementation. Understanding what it does is crucial of understanding how epoll receives new events from the monitored

Datong Sun Datong Sun
epoll

The Implementation of epoll (1)

In this series of blog posts, I will be taking notes about the internals and implementation details of the Linux event poll (epoll) subsystem. Prerequisites Please note that I am assuming the audiences

Datong Sun Datong Sun
Myself

New Blog, in English

Finally, I decided to switch my blog from Jekyll to Ghost. Also, I will be writing my new blog posts in English. This site is running on DigitalOcean, with nginx running on a

Datong Sun Datong Sun
Datong's Random Thoughts © 2018
Latest Posts Ghost