rebootcs / cdn_other Goto Github PK
View Code? Open in Web Editor NEWThis project forked from pietdaniel/cdn
A simple CDN server
This project forked from pietdaniel/cdn
A simple CDN server
(`. : \ __..----..__ `.`.| |: _,-':::''' ' `:`-._ `.:\|| _,':::::' `::::`-. \\`| _,':::::::' `:. `':::`. ;` `-'' `::::::. `::\ ,-' .::' `:::::. `::.. `:\ ,' /_) -. `::. `:. | ,'.: ` `:. `:. .::. \ __,-' ___,..-''-. `:. `. /::::. | |):'_,--' `. `::.. |::::::. ::\ `-' |`--.:_::::|_____\::::::::.__ ::| | _/|::::| \::::::|::/\ :| /:./ |:::/ \__:::):/ \ :\ ,'::' /:::| ,'::::/_/ `. ``-.__ CDN Project 5 '''' (//|/\ ,';':,-' `-.__ `'--..__ `''---::::' __ _ __ _ _ __ __| |_ ____ _ _ __| | __ / _` |/ _` | '__/ _` \ \ / / _` | '__| |/ / | (_| | (_| | | | (_| |\ V / (_| | | | < \__,_|\__,_|_| \__,_| \_/ \__,_|_| |_|\_\ Daniel Piet Will Tome ######### # Goals # ######### Create a dns server that will return the lowest latency replica server to a given dig request. Moreover, create an http server which will cache content and request from the origin if necessary. Finally, create three scripts that deploy, run, and stop the CDN. ######################### # High - Level Approach # ######################### The DNS server will initially do an http lookup against the ip for a geo location. It will then return the closest replica server based upon the geolocation. Ip address are also traced from the replica servers and latencies are posted to the dns server's database via hacks The HTTP server caches content naively. The cache is evicted by a last in last out policy. Content is requested from the origin server on a cache miss. #################################### # Performance Enhancing Techniques # #################################### Scamper was used on the HTTP servers to perform trace calls that can help identify the latency to a given ip address. ############## # Challenges # ############## It would of been nice to have a solid CIDR ip to allow for ip address aggregations based upon core points in the network. This way our traces could identify where many ip address converge allowing for accurate laten y assumptions based upon ip. Constructing a CIDR api is not terribly difficult but tedious and was thusly neglected in favor or easier techniques.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.