zoukankan      html  css  js  c++  java
  • 重震我的博客 分享沙发生活开发经验(概述篇)

    想起一年前我的“沙发生活”网站开张,一路走来已经有一年历史,我也没有再续费继续经营沙发生活网站,原因也很简单,一个人运营一个网站太累了,因为使用的技术含量太高了,所花费的精力的确有限,整个沙发生活网站是以Community Server 2.1(以下简称为CS)为蓝本设计,技术含量最高是在百科全书中,百科全书是以抓取Yahoo的知识堂为核心,其中条件筛选经历了3,4次的大的版本修改,的确一路走来1年的时间没有停滞过对于百科全书的核心技术修改工作,其中也说说每次大版本修改过程的某些细节关键点,也分享一下对于站长一些“懒惰”而“自豪”的问题。
    • 从一开始设计百科全书栏目时也是很巧合的因缘,因为扩展CS功能只有“资讯”和“百科全书”2个栏目,先有资讯后有百科全书,2个栏目的技术大同小异,最大的区别在于资讯的抓取->覆盖的方式进行,而百科全书是抓取->添加的方式进行,自然百科全书的数据量就超大了,一年下来百科全书的数据量就有140多万条记录,这对于技术来说显得特别重要,从一开始花了1周的时间把整个百科全书144个子栏目(当时是,现在已经添加了5,6个子栏目)40万条数据抓取到本地,而当时单单这40万条数据就已经占了磁盘1G多的空间。天哪,一开始就已经遇到很多技术上的问题需要解决。
    • 其实按照以上的推算,一年来应该不只140多万条数据,这是为什么呢?在整个网站设计时已经要使用双数据库进行开发,CS一个数据库,百科全书一个数据库,就是考虑百科全书中的数据量太大了,维护的风险也相对大。另外,在中国站长网中也统计了一些有价值的数据,发现问题的答案中字数相对少的文章的点击情况很一般,鉴于此,就进行了百科全书的第一次技术改造,增加了抓取时的条件筛选。(具体的优化方案会在以后的章节中一一细说)
    • 网站也算运行得比较正常(这个也是相对而言的),当时设计的抓取程序使用WinForm(CS)架构设计,本来的网站服务器就不是我自己一个人的,程序偶然也会出现CPU占用过高,或被别人无意关闭的情况,当然也是很郁闷,自然这也是一个技术提升的好机会,改用WebForm(BS)架构设计,其实当时也是想着试一试的态度进行技术再次改造,当然这也会存在一定的风险,主要在于WebForm对于线程的运行周期比较含糊,自然实验就是最好的解决方案,问题还是给我解决了,改版后的抓取程序能在WebForm中实时抓取,而其他人也不知道数据从哪来的,因为在进程中只有w3wp.exe的进程在为我工作。
    • 前面也有提到程序运行还可以,不过也有偶然的时候,而且情况越来越严重,并且线程的调试也相对于单线程难调试,CPU的占用一直居高不下(股市那么好就好了^_^),平均占用50%以上。郁闷....!但是问题总得要解决,要不只能把抓取程序停了,停了就有点可惜了,改造自然也是首选,在抓取的程序增加了CPU占用率的判断,哈哈~~~~问题又给我解决了!
    • 随着时间的推移,网站积累了不少用户,而抓取的程序有时还是不太听话,我也不可能24小时盯着,自然又产生了程序上的修改,抓取的数据延后一天产生,程序上只需要多加“+1”就可以了,自然我有了24小时的延后修改时间。
    • SEO是每个站长必学的课程,自然我也不例外,其中的网站蜘蛛黏连度比较重要,对于网站的大数据量来说这个蜘蛛网显得由为重要,当时比较热门不就是“标签”(Tag)吗,但是也不可能这个Tag一条一条记录手工添加,自然也产生了程序筛选标签的方法,并且速度要快,产生的标签要合适(这个问题我也只能解决到80%)。哈哈~~~(先笑一笑,这个问题对于我来说也比较自豪的)。其实解决这个问题也不一定从人的角度去考虑怎么解决,因为搜索引擎也是使用机器去搜的,从搜索引擎的机器去解决此问题就可以了,这里先说说其中的一些数据的来源,搜狐的搜索引擎搜狗也学Google实验室一样也有自己的一个实验室,其中有互联网语料库互联网语料链接关系库互联网词库中文词语搭配库文本分类语料库。这些重要的数据对于开发自由筛选标签起很大的帮助。
    • ....还有很多更细节的内容将会在日后一一记录。

    沙发生活网的投入产出比为1:40,这也是我很自豪的地方,但是这么高的比率为什么不继续运营,这里随便说说,这些流量大多是由百度转入流量,但是现在的百度已经将沙发生活网拉进它的黑名单,发生这种情况也很郁闷,游戏规则是由各大搜索引擎制定,这好比国家的法规一样,但是不可能每个国家(等于每个搜索引擎)的法规都去学习,这个也导致我不再运营沙发生活网的原因之一。
    沙发生活网对于我来说的确学习了不少的知识,但是也正如我当初要做沙发生活网的目的一样,在于做实验而不在于盈利为主要目的,所以停了对于我来说也是小事。沙发生活由一开始人工做内容到技术改造后的无人值守,当中的知识的确很多,也不是三言两语就说得完的事。
  • 相关阅读:
    硬盘分区、格式化及文件系统的管理一
    系统监控
    系统的初始化和服务
    正文处理命令及tar命令
    Salesforce: getContentAsPDF()在lightning mode下报错
    Salesforce: 无法在trigger中取到Country或State的更新
    Salesforce: Safe Navigation Operator
    Salesforce: INVALID_QUERY_LOCATOR简析
    Salesforce: Trigger使用注意事项
    Salesforce: 设置用户默认访问Lightning Mode
  • 原文地址:https://www.cnblogs.com/yuxiang9999/p/916839.html
Copyright © 2011-2022 走看看