初探京东云,一个改变世界的云服务商
前言:
京东云是京东集团旗下的云计算综合服务提供商,拥有全球领先的云计算技术和完整的服务平台。依托京东集团在云计算、大数据、物联网和移动互联应用等多方面的长期业务实践和技术积淀,致力于打造社会化的云服务平台,向全社会提供安全、专业、稳定、便捷的云服务。
2016年京东618大促期间,京东云带宽扩容数百G,从容抵挡大量流量瞬间爆增带来的冲击,100%的订单在云上完成。目前为止,京东在Docker容器上的应用数量已经突破5000个,在生产环境上运行的Docker实例也已突破150000个。这些经过充分电商大促考验的技术服务,将会成为中国企业进行互联网+转型的强劲动力。
一、购买服务器经过
今天无聊,就去京东云的官网上逛了一逛。凭着职业的敏感,顺利拍下京东云的秒杀服务器。
好久没玩过WINDOWS的服务器了,遂选择windows 2008。值得一提的是,其他云服务商(说的就是你ALi)提供的秒杀或者减价大部分都是Linux的,如果有windows数量也是很少或者要加价。
到了提交订单的时候,才发现,云主机只是卖3.92,其余的都是公网IP的价格。可见,现在IPV4的IP是多么紧张。
6.18元的2M带宽服务器,去哪里找?
二、登陆到服务器
1、寻找隐匿的密码
登陆到服务器后,发现需要密码登陆???MD,购买服务器的时候我都没有设置过密码,遂提交工单。
可以看到,某某某售后萌妹在我提交工单后3分钟就把问题解决。虽然这不是什么难题,但实时相应的服务态度现在已经是很难得的了。本来还想和客服MM聊会儿天的,不小心点了确认,然后工单变为已解决。
2、在线VNC
首先要科普一下VNC是什么。VNC是。。。我也不知道,反正我知道他是能在网页中远程操控的电脑的一种技术,你自己可以百度(GXXGLE)。。。。
然后在使用VNC的时候,进入页面的时候就提示按下Ctrl+Alt+Delect
重要的时刻尴尬症又犯作了,我在键盘一直在按Ctrl+Alt+Delect和Esc,在任务管理器和桌面切换。天知道他提示的按下Ctrl+Alt+Delect是相对服务端的,我死劲的按,都被本机系统拦截,发送不到浏览器。转眼一看,右上角有一个Send CtrlAltDelect。不过细线,无论是阿里云还是新浪云还是其他的,大部分好像都是把这个快捷键放在上面。
3、公网IP与远程桌面连接
后来确实忍不了VNC 的操作,就滚回控制台。
在下面看到公网IP,然后通过系统自带的远程桌面连接。
通过输入帐号密码顺利进入系统。
二、系统环境配置
1、网络速度
刚进入全新的windows 2008系统,果断去网上冲浪试试。发现浏览器是IE8,已经脱离了现代的生活,果断下载最爱的opera
可以看到,服务器标的是2M的带宽,下载速度达到了7.6M/S。但是这个可能会随着资源而异吧(没达到这个速度不要打死我)。
2、硬盘读写速度
传统的HDD硬盘读写速度受传输带宽的瓶颈的影响,大多数只能到达90MB/s到190MB/S。而SSD高端产品售价高昂,一般人无力承受,而低端产品,有些速度也就在250MB/s左右。
通过软件测试,在京东云免费配置的硬盘中,其速度可以高达286.4MB/S,坎比固态硬盘。满足了网站的日常使用。
三、搭建公网服务器
1、从安装IIS到失败
通过搜索的途径,成功找到了安装IIS的方法。下面将介绍这一次安装的流程和转换其他软件的流程。
1.打开服务器管理器
并且点击添加角色
2.在服务器角色选择 Web服务器(IIS)
由于本人道行甚浅,无法操纵IIS,所以便有下文
2、在京东云运行USBWebserver
这个软件运行非常简单,只要在网上找到相应的版本,然后直接双击运行就可以运行PHP + SQL服务了
当看到Apache 和 Mysql 都是 √ 的时候,证明软件已经安装完毕。
接下来打开浏览器输入 localhost 或者 127.0.0.1 就可以进入网站了。
3、在京东云运行APMServ
通过百度的途径下载这个软件,直接运行即可。
处理PHP文件非常简单,只需要在www/htdocs中修改相应的index.php文件即可
和USBWebserver一样,只需要打开浏览器输入 localhost 或者 127.0.0.1 就可以进入网站了。
下文将详细讲述APMServ之CGI的用法
四、用C语言写网站(CGI)
1、CGI介绍
CGI(Common Gateway Interface)
是WWW技术中最重要的技术之一,有着不可替代的重要地位。CGI是外部应用程序(CGI程序)与WEB服务器之间的接口标准,是在CGI程序和Web服务器之间传递信息的过程。CGI规范允许Web服务器执行外部程序,并将它们的输出发送给Web浏览器,CGI将Web的一组简单的静态超媒体文档变成一个完整的新的交互式媒体。
Interface,简称CGI。在物理上是一段程序,运行在服务器上,提供同客户端HTML页面的接口。这样说大概还不好理解。那么我们看一个实际例子:现在的个人主页上大部分都有一个留言本。留言本的工作是这样的:先由用户在客户端输入一些信息,如评论之类的东西。接着用户按一下“发布或提交”(到目前为止工作都在客户端),浏览器把这些信息传送到服务器的CGI目录下特定的CGI程序中,于是CGI程序在服务器上按照预定的方法进行处理。在本例中就是把用户提交的信息存入指定的文件中。然后CGI程序给客户端发送一个信息,表示请求的任务已经结束。此时用户在浏览器里将看到“留言结束”的字样。整个过程结束。
2、CGI处理流程
简单来说:CGI可以理解为一个很简单的远程脚本调用。在服务器端有许多的脚本,这些脚本可以使用任何可执行语言编写(shell、ruby、perl、PHP),然后用户通过url访问web服务器,服务器会根据已有的url mapping找到对应的一个脚本,然后执行这个脚本。最后把脚本执行的结果按照既定的格式(比如Html,xml,json之类的)返回给用户。
CGI的简单处理流程:1.用户点击URL发送请求给web服务器 2.web服务器接受请求转交CGI程序 3.CGI程序把处理结果传送给web服务器 4.web服务器把结果发给到用户。这个处理流程就是著名的请求/响应模型,web开发都要遵守这个模型。
上述步骤中web服务器接受请求转交CGI程序,需要配置web服务器,将对因的URL请求映射为CGI程序(大多为脚本程序)。
每次CGI请求都要生成一个进程来运行,大量请求就会压垮服务器。对脚本语言而言,每次请求都重新载入和初始化解释器,开销太大。此时,可以将脚本语言直接集成到web服务器中(例如,Apache中的mod_perl,mod_php,mod_python,mod_ruby)。CGI相关的Apache模块:mod_actions(CGI脚本类型),mod_cgi(启动CGI并维护相关事件出错日志),mod_cgid,mod_env(设置CGI编译器的环境变量,比如软件库)
3、CGI编程语言
CGI本身独立于任何编程语言,只要相应的语言可以运行在服务器上,CGI 程序可以用任何脚本语言或者是完全独立编程语言实现。除 Perl 外,Unix shell script, Python, Ruby, PHP, Tcl, C/C++, 和 Visual Basic 都可以用来编写 CGI 程序,但Perl被广泛用来编写CGI程序。
脚本语言灵活性和高效开发效率,可以快速开发CGI程序,同时可以完成非常多的任务。CGI中脚本语言介绍如下:
Perl
1987年,Larry Wall吸取C,sed,awk,内部集成正则表达式,瑞士军刀般的脚本语言。
PHP
1994年,Rasmus Lerdorf,个人网站开发,Perl程序,C重写,Zend Engine,php5。
特点:
1.混合C,Java,Perl,加自创语法
2.在执行动态网页上,比其他动态语言(Perl)速度快
3.拥有强大的功能,可替代CGI
4.支持主流数据库和操作系统
5.可以用C/C++扩展
优势:
开源,免费,快捷,夸平台,高效,面向对象,图像处理
Ruby
1995年,吸收了Smalltalk,Perl,Lisp等语言,是一个让程序员感到快乐的语言。
其他的就不介绍了,诸如python这类的语言。
4、C语言编写CGI优势
cgi指的是exe方式运行的cgi,是目前最稳定的运行方式,因其是独立的进程,而且执行完后自动释放进程,所以稳定性是最高的,如用大量点击方式攻击,攻击完后cgi还能照常运作,而且其性能不变。另一优点就是安全性比脚本高很多,如一个网站全用cgi写,这个网站可以没有一个可以支持用http能流览的网页,显示的页面全是由cgi程序从调与web无关的目录中读取并显示给用户。
cgi做的网站执行部分与网页页面是分开设计。
5、在京东云上使用CGI
1.运行APMServ
2.打开CGI目录
3.创建相应的C语言文件
这次我选择编写JD.cgi.c这个文件,这个是作为源文件来实现CGI的编译。
4.编写相应的C语言文件
(代码将会在最后附上)
5.生成CGI并运行
生成CGI需要install spawn-fcgi和install fcgi-devel。这部分XX搜索有,所以就不再详细讲述
执行g++ JD.cgi.c-o JD.cgi -lfcgi即可生成相应的CGI文件。
接下来打开浏览器输入 localhost/cgi-bin/JD.cgi 或者 127.0.0.1/cgi-bin/JD.cgi 就可以进入网站了。
五、总结京东云之旅
通过这次京东云之旅,我初步体会到了京东云的优势。其控制台的安全是其他云服务商现在无可比拟的。通过低成本、高性能、可扩展的内容分发服务透过CDN的媒介体验到了高速的互联网接入服务。
通过高速响应的硬盘,使文件I/O读取的效率更高。加大了与客户端连接的效率,优化了用户的体验。
同时京东云便捷的弹性计算也方便了访问用户突增的情况。负载均衡实现访问流量安全合理分配。
同时还有许多API我没来得及体验,希望大家有空去体验一下顺便写个评测
上一篇: Java线程池使用与原理详解