-
静态网站,可以认为是网站构建的根本。 随着动态网站的出现,众多CMS程序已经十分全面的占据各大网站系统的后台。 基于Web标准,使得前端与后端分离化,数据与文件分开管理。由于这些好处,PHP+MySQL几乎横行了大部分的站点构架。然而,对于个人用户,或者小型企业而言,整站动态化是否真的必要?我认为,这是值得商榷的。 一般的静态网页,因为少了数据库的查询,对于所在服务器的要求大大降低,页面加载速度也就大幅度提升,用户体验度自然也就高,十分适合展示型或者更新频率较慢的网站。这两点要求,恰恰符合了个人博主与小型企业用户的需求。但问题在于,如果要构筑静态网站,那么会迫使非专业用户学会使用Dreamweaver等专业的建站程序,这无疑阻断了用户选择静态建站的道路。除此之外,诸如用户评论、RSS订阅、社区分享、访客统计等功能,在基本的静态站点中也是无法实现的。这一系列的问题,最终导致静态站点与整个互联网脱节,成为孤立的一个主体。 解决方法其实很简单,也是我目前尝试应用在企业站点中的手法,就是基于动态网站构架,静态化页面!原理很简单,因为在一个网站中,大部分东西都不需要实时更新的,比如网站名称,文章内容,页面介绍等。那么极端一些的方法就是,让所有的东西都不需要动态化,先整站静态化。当有内容更新时(比如新文章加入,新评论加入等操作),再进行一次静态化操作(或者只针对需要更新的页面做新的静态化处理)。这样一来,访客在打开页面时,SQL次数基本为0,但是使用者又可以在后台方便的实时更新,一举而两得。这个方法我定义为:由动至静。 那么反过来,由静至动是否可行呢?答案也是可以的,这必须归功于当下流行的静态网站生成器。原理就是在本地建立了一个网站模板,在本地写好日志后,通过批量化处理自动生成并更新所有的页面文件,最后想这些文件统一上传至服务器就完成了。与传统的静态网站构建方式相比,有两点不同:1.降低了更新文章的操作门槛,用记事本就能完成文章的添加,修改,删除。2.可以充分利用Web 2.0应用,将评论、订阅、分享、统计等功能托管在第三方服务。最终完成的站点效果,与“由动至静”法相差无几。 虽说相差无几,但毕竟还是略有些差异的:1.部分需要查询数据库的功能,比如搜索,无法在“由静至动”中实现。因为你无法预知用户会查询哪些关键词,故而无法实现准备好这些关键词对应的页面。2.“由静至动”法虽然降低了编辑的门槛,但大部分人更容易接受“由动至静”法的“所见即所得”。3.“由静至动”法的动态数据(如:评论)因为是托管在第三方服务器中,因而这部分内容可能会受制于第三方服务(能否数据导出与迁移等问题)。4.虽然两者在访客状态下都是静态网页形式,但“由静至动”法对于服务器要求远低于“由动至静”法,个人用户在考虑站点维护成本时应当有所考量。5.除此以外,在使用环境支持等方面,目前“由静至动”法只有极小众人群的用户,对于企业建站而言,依旧推荐使用主流方案,这对于数据的定期备份等均有保障。 总结一下,静态网站系统虽然目前并不适用于企业建站,但对于极小众的GEEK而言比较有趣味,可以探索与开发更好的用户界面。
-
网页的加载速度,一直是我刻意忽略的问题。本来就是写个小博客,给自己留个念想,到老了有所回忆,平时的访问量就没多少,打开速度慢一些也无所谓。 但是,近期因为用户对这一方面有所要求,特别是使用国外主机又嫌备案太麻烦的,因此网页的提速不得不被放到眼前来解决。 提升网页加载速度,如果主机空间在国内,问题并不会太复杂,但是对于使用了国外空间,又要保证国内滴童鞋能快速访问的情况,还是得多啰嗦几句滴。 总体的优化思路在于两大点:机内环境与机外环境 一、机内环境的优化,决定于网站所在主机的配置以及数据库查询。而主机的配置,说白了就是砸钱,一分价钱一分货,免费空间没好货。对于较早的静态网站构架,一般会比动态页面加载要快,这其中就涉及到对数据库的操作。一句话概括就是:如无必要,勿增实体(引:奥卡姆剃刀)。主要从以下几方面入手: 1.页面静态化。一般的网站主题中有太多不必要的SQL调用语言,例如网站标题、站点描述、首页地址、主题模板地址等,全部静态化操作,减少访问数据库的次数,只维持需要经常更新的部分调用数据库即可。 2.插件最少化。插件的出现,不可否认具有很强的应用性,拉低了动态网站系统的使用门槛。但是随即也会造成一些代码冲突、垃圾冗余的问题,筛去不必要的插件,或者将插件代码化,融入主题模板之中,可大大提高执行效率。 3.功能最小化。默认的网站系统会开启许多站长并不需要的功能,如离线编辑、RSS输出FEED等,这些东西在打开页面时同样会占去一定的加载时间,所以我们只需开启有用的功能即可。 4.压缩与缓存。开启GZIP,缓存数据库,压缩图片等,这些可以大大减小网页本身输出的内容,在相同读取速度下,无疑越小越快。 二、机外环境的优化,那就取决于从终端用户连接到网站服务器经过的所有节点。理论上说,物理距离越近的,速度越快。所以要保证从国内访问国外空间的速度,一般选择的大致顺序是香港主机–>日本主机–>美国主机。但这个顺序并不绝对,因为涉及到接入商给的带宽,这同样是难以无法控制的因素。 早先使用七牛的云加速来镜像图片文件,然而使用体验并不如宣传的那样出色,主要问题是不稳定,毕竟是小公司吧,在国内还是BAT三家巨头垄断了互联网啊!目前试用着另一家的CDN(Content Delivery Network,即内容分发网络),这个技术使用起来会有些小问题,需要逐一排查,另外设置优先规则才比较好用,否则只能面临越用越慢的遭遇了。 最后晒一张目前主站首页的打开速度测试: 如今才发现,网页加载速度的优化似乎是个没有尽头的话题。
-
CrossProxy中文译为“交错代理”,是我起的名字。 因为家中使用的移动宽带(铁通线路)很不给力,这两天又逐步开始限制上传速度并且封杀了迅雷的加速服务,很不爽啊~ 使用迅雷自带的下载诊断工具,可以发现P2P协议间歇性正常,修改HOST文件后依旧无法解决问题。 GG了一下,找了个HTTP代理挂上,下载速度从0K/s提升到了20K/s,可能是免费服务器对吞吐量进行了限制,一连找到3个,使用交叉设置,将下载的压力同时分解到3台代理服务器上,并行下载,成功恢复速度。
-
触控手机已成为主流,搭载Andriod系统的PHONE畅销全球。 虽然俺是直板控,但是潮流不能灭~ 凭借VM的强大内核,找到了 Andriod X86的镜像,直接测试~ 废话少说~上图! 开机启动~选择第一个进入~ 进入 Andriod 桌面出现~还是锁键盘的~ 解锁~ 进入电话模式~拨个号玩玩~ 可惜会提示出错~毕竟是PC版~没有SIM卡~ 进入应用菜单~ APPSTORE 上个网玩玩~ 正在进入~ 居然成了~ 地图倒也能用~就是无法定位当前位置~ 好了~如果你略懂VM~那就去这里下载Andriod x86玩玩吧~
