author ： The story of the editorial department
come from ： Open source in China （oschina2013）
If you need to reprint, please contact authorized , The above information is indicated in the paper
Web Development — Web Immortal ！Web Forever ！
If you chase the front wheels fast enough , Then your loneliness can't catch up with you . unfortunately , Surrounded by a huge sense of loneliness , After all, it still can't catch up with the speed of the front wheel .
You can see , With the current mainstream packaging tools Webpack and Parcel comparison ,Fastpack There is no small advantage in the time of packing , If you are interested in children's shoes, try it . But will there be children's shoes after trying to use this wheel , Come up to “ I might as well build a wheel myself ” The idea of ？ It's called Veryfastpack？
Tokio —— Use Rust Write a fast and reliable asynchronous programming framework
So far ,Rust It's still a niche programming language . however Rust It has been said that they will release a major version this year —— Rust 2018. So it still deserves our attention .Rust By Mozilla Leading development of a modern system programming language , At this stage Rust The orientation is still high-performance server-side program development , It is very suitable for the system programming field with high performance requirements .
Recommended here Tokio It's using Rust Write asynchronous programming framework , It abstracts complex asynchronous programming into Futures、Tasks and Executor, And provides Timer And other infrastructure .Tokio Fast 、 reliable , And scalable .
Tokio Is an event driven non blocking I/O platform , For the use of Rust Programming language to write asynchronous applications . In high-rise design , It provides some major components ：
Multithreading 、 Job theft （work-stealing） Of task scheduler .
By the event queue of the operating system （epoll,kqueue,IOCP etc. ） Supported by reactor .
asynchronous TCP and UDP Socket .
These components provide the runtime components needed to build asynchronous applications .
libaco —— A fast lightweight C Asymmetric coroutine library
Rarely recommend about C Open source projects for languages , One is because compared with other languages ,C Language related open source projects are relatively few , And then there are excellent C There are not many language open source projects . I recommend libaco Is a high performance network development library , The quality is quite high ,7 When open source came out in January , I've been on Github Trending Ranking List .
The author of libaco By definition, it's a fast lightweight C Asymmetric coroutine library （10 ns/ctxsw + 10 million coroutines only consume memory 2.8GB ）, Brilliant data performance . Here's a brief introduction to this project ：
Except for a production level C The library realizes , It also contains a detailed document describing how to implement a The quickest and right And its strict mathematical proof ;
The core implementation does not exceed 700 Line code , It contains all the functions that a coroutine library should have ;
stay AWS c5d.large The results of performance tests on the machine indicate that , It only takes time for a context switch between corollaries 10 ns （ Independent execution stack ）;
When a user creates a new collaboration , You can choose to have an exclusive execution stack , Or share an execution stack with any number of other coroutines ;
The ultimate memory efficiency ： Ten million concurrent programs only consume 2.8GB Physical memory （ tcmalloc, Every coroutine uses 120B Copy stack of ）.
Above " The fastest " It means satisfying Sys V ABI Intel386 perhaps AMD64 The fastest context switch implementation under constraint .
Funny OSS — Interesting open source software **
browsh —— Text based modern Web browser
Browsh It's a plain text browser , Can run on most of TTY Terminal environment and any Web browser . It can render anything a modern browser can render ：HTML5、CSS3、JS、 The video even WebGL. Its main purpose is to run on a remote server , And pass SSH/Mosh Or in the browser HTML Service access , To significantly reduce bandwidth , In order to improve the speed of browsing and reduce the cost of bandwidth .
On ： Render as TTY Pattern ; Next ： Render to browser mode
Some people can't help asking , Why use such a browser ？ You have to know , There are many places in the world where the network environment is not so good , For those with limited bandwidth , This kind of product can be well compatible with the contradiction between content and experience , Let the convenience of the Internet popularize more users .
cheat.sh —— A document query website that can only be accessed from the command line
cheat.sh It's a website , It is also a practical quick reference tool . By using the command line curl http://cheat.sh, You can quickly find some syntax and keywords in any programming language .
cheat.sh It has the following features ：
concise curl/browser Interface
cover 55 Programming languages , some DBMSes and 1000 Many of the most important UNIX/Linux command
No installation required , used anywhere
ultrafast , Usually in 100 The answer is returned in milliseconds
It can be used directly in the code editor , No need to open a browser
That's the end of this issue , More interesting and predictable open source software will be found in the open source China community ~！
New open source projects are added every month . seeing the name of a thing one thinks of its function , Monthly update . We will learn from the open source projects newly included in the community last month , Pick something valuable 、 Helpful 、 first-class 、 Or fun open source projects to share with you . Not many , But what we strive to recommend are all boutiques . At present, these open source projects mainly come from the collection of editors and the delivery of users , So if you have better open source project recommendations , Welcome to actively deliver .
Check the correct posture of the delivery software here