12年2月-17年8月,5年半的创业时间,虽然失败了,但也学到了很多东西,在这里记录一下,没有高端的技术,如果能给大家带来一些帮助,不甚荣幸!

2012.2周五网启动

项目就是收集景点售卖门票(当时就是跟携程、驴妈妈卖景点门票一样)
简单一图概括项目框架:

项目核心模块:景区(门票)、交易、用户,后续所有的扩展都是基于这3个核心。
这里是景区的大概设计框架:

列表主要是走sphinx,单数据主要是memcached,在model层写入同步更新sphinx和memcached做到实时更新,当时让sphinx准实时的更新耗费了一些精力,因为sphinx普遍还是用于论坛每天1-2次全量和定时的新增帖子,对实时性没有特别高的要求,当时我是通过删除再新增的方式,以及部分字段直接update形式。
项目的整体架构:

服务器:自己买的服务器,当时的主流配置,用的RedHat系统(什么版本忘记了=_=!)
技术栈:web服务器apache,php5.3(使用Yii框架),缓存memcached,搜索(sphinx+中文分词Coreseek),mysql,代码管理:svn。
后面有些挑战的工作是搭建门票录入系统,因为需要满足不同时间不同价格以及方便员工有效率的管理耗费了很多的经历,这里就不细讲了(其实现在回想起来已经很困难了:0)。后来因为项目没起来没什么流量,也就没什么技术挑战。

2013.4 周末玩什么

为周五网导流的一个内容咨询项目


整体技术架构并未发生什么变化,就是扩展了一个项目。

2013.10周末去哪儿

刚开始项目创建的时候并没有发送技术架构的整体变化,对一个活着生死边缘的公司来说,没有比快速这两个字更重要的事情了。所有只要是现成的我们就直接拿来用!
刚开始的基本架构,是一个纯移动端的项目,完全没有PC。

项目上线3个月左右就被appstroe推荐了,接着就是用户的爆发式增长,至此走上技术升级道路。

2014年的技术升级

业务重点
建立商户活动发布平台
建立H5站点(移动web)
平台正式推出交易(原来以内容为主)
技术重点:

这一年技术上最主要的是把我们的 系统搬入到了云端,之前的几年已经让我们认识到”服务器运维“的成本较高,很多事情云端已经帮我们做好,我们可以更加的专注公司本身的业务。
另外这一年随着商户发布平台的推出,正式把平台定位成toB,并马上推出交易,至此周末去哪儿完成内容和购买的闭环。

技术框架:

重要的2015年:

重要业务:
行为数据分析(数据埋点)
新技术的引入:
rabbitmq–消息中间件
supervisor–进程管理
Java(spring)–后端技术升级
sphinx->solr(java接管搜索服务)
redis–更优秀的缓存
NodeJs–前端技术升级
Lua–嵌入到nginx,进行php、java的路由分发实现2个种服务端的共同运行

以下是几个重要的架构大图:

技术栈:

系统的分层:

数据埋点刚搭建的时候存储还是由mysql担当(后面会提到转型)

2015年的技术升级对我们来说是革命性的,他不只是技术上,还有团队上,我们引入了新的java团队,java的引入是对未来的考虑,php的人才每年在逐步递减,java的生态在逐渐成熟,更重要的是我们需要给团队注入更多技术活力,从管理的角度考虑也是很有必要的。
由于引入了新的java技术,我们把原来php写的业务模块用java重新写了一遍,这需要公司投入更多的技术成本,这是需要公司对未来和技术团队充满信心,因为做这些对公司当前的业务并没有直接的帮助,并且技术人员又是很贵的!不管如何我们克服了重重困难,致力于公司技术的进步。
也是在这一年公司认识到用户数据的重要性,我们需要更懂用户,所有我们开始采集用户使用产品的一些行为数据,数据埋点框架正式搭建。

2016年

重要业务:
B2B分销平台搭建
第三方的供应商接口接入
主要的技术点
Jenkins–自动化发布
hadoop–大数据平台搭建
pt-online-schema-change --mysql热修改
Jenkins的自动化发布:
如果你每天都有发布甚至是多次发布,而你总是需要登陆到服务器上,真的是很麻烦,因此自动化当然要引入,同时他能更容易授权给你的工程师!

举例shell脚本:

pt-online-schema-change:

这里值得一提的是我们把日常发布sql语句通过先录入我们的运营后台,然后由专门人员审核,审核通过后通过shell脚本读取审核通过的sql语句,在jenkins执行脚本,而执行sql语句集成了pt-online,完成发布上线完全自动化。解决每次遇上sql语句发布都需要先登陆阿里云RDS(自主mysql同理)执行sql,再用jenkins发布的半自动化流程,同时也解决发布人员无需授权数据库管理权限。

hadoop的架构:
hadoop的引进是因为我们认识到mysql要记录并处理行为数据已经力不从心,而我们对技术的追求的兴趣一直保持热情,自然hadoop的体系进入到我们的视野!

另外由于技术内部已经有很多的第三方软件平台,为了方便大家,我们引入了LDAP统一账号,并打通我们的员工账号,只需本来就需要记住的员工账号即可登录我们所有的系统。

在2016年低我们的服务器的整体布局:

2017年的终点:

重点业务:
小程序上线
B2C分销平台
C2C分销小程序
公司的没落,也意味着技术的停滞,两者互助,我们最终的大图:

最后一张技术栈图收尾:

补充:以上的技术发展路程非我一人建立,很多的决定和推进是我的另一位技术合伙人主导,很高兴在这5年多的时间能和他里一起战斗,从他身上也学到了很多优秀的特性。也相信他未来的成就绝对不低,一起加油!
如想更加了解本篇技术发展过程的背景可以参考我之前写的一篇个人经历老程序员的成长之路,里面有提到这家公司的经历。

一家旅游互联网公司技术的发展史相关推荐

  1. DNA测序技术的发展史之——第一代测序技术

    DNA测序技术的发展史之--第一代测序技术 2016-11-19 15:55:42 | 分类: 默认分类  [转载]     1953年,沃森和克里克发现了DNA的双螺旋结构,随后,分子生物学研究发展 ...

  2. 课外阅读(通讯技术的发展史)

    课外阅读(通讯技术的发展史) 人们常把有线固定通信和无线移动通信作为信息基础结构(NII/GII)的两大组成部分.近年来它们都以明显的快速步伐向前推进,而且进入新世纪后将更加快速发展,为兴旺的信息时代 ...

  3. 三星中文AI助手Bixby发布,现在,这是“一家AI商用技术公司”

    李根 发自 凹非寺  量子位 报道 | 公众号 QbitAI "智能手机的竞争正在遭遇极限和瓶颈." "手机行业的竞争将围绕AI开始,而且现在已经开始." &q ...

  4. Kubernetes--容器编排技术的发展史

    本文目的是描述Kubernetes的诞生史,主要分为四个部分,从开源社区的角度分析云计算的发展史. 一.概述 为应对业务快速的发展,以及系统的稳定性,各大互联网公司纷纷构建了自己的云计算平台,用于维护 ...

  5. [Base新加坡][技术移民] 新加坡纽交所上市互联网公司技术职位常年开放!无996!Work Life Balance,开启全新生活!...

    纽交所上市大型互联网公司招聘,新加坡知名团队,国际化平台,富有竞争的薪资,享受新加坡优质生活环境及教育资源,公司给申请EP,属于技术引进性人才签证.可携带配偶子女一起前往新加坡工作生活,配偶也可在新加 ...

  6. 从虚拟化到云原生——容器技术的发展史

    近年来,云原生 (Cloud Native)可谓是 IT 界最火的概念之一,众多互联网巨头都已经开始积极拥抱云原生.而说到云原生,我们就不得不了解本文的主角 -- 容器(container).容器技术 ...

  7. 华为买买买!5000万美元收购一家安防技术公司 看中的是这个!

    [TechWeb]据俄罗斯国家媒体Sputnik报道,华为目前已经完成对一家名为 Vokord 的莫斯科安防技术企业的收购.据悉,收购耗资5000万美元,主要目的是该公司在人脸识别系统方面的技术专利与 ...

  8. springboot旅游系统设计技术描述_5A旅游景区标识标牌系统业材料的工艺技术

    如今5A旅游景区标识标牌系统业发展迅猛,标牌和导向系统的材质也是琳琅满目.铝型材,压克力.双色板.不锈钢板材.铁板材等等不一而足.每种材质都有各自的特色和应用范围,也突显出不同的风格. 我们试举几例来 ...

  9. 国内各大互联网公司技术团队站点

    利用闲暇时间整理了一份国内各大互联网公司的相关技术站点,希望能够对大家有所帮助,也欢迎各位帮忙补充. 1.腾讯系列 名称 地址 财付通设计中心TID 地址:fitdesign.tencent.com/ ...

  10. 2016年度盘点:一家典型互联网公司的必备工具宝箱

    2016年刚刚过去,2017年已经来临.在过去的一年,作为互联网从业人员的你肯定和我有同样的感受:无论是产品研发.市场还是运营人员,大家在工作中使用的工具产品越来越多,对工具的依赖程度也越来越重.值此 ...

最新文章

  1. charles 代理手机连不上网_手机连不上网?四种方法教你如何解决,建议收藏以备不时之需...
  2. 可能是最全面的G1学习笔记
  3. Javascript 获取url参数,hash值 ,cookie
  4. day7——集合,深浅copy
  5. 掌握jsp自定义标签:(四)
  6. matplotlib显示图中标签
  7. 【渝粤教育】国家开放大学2018年秋季 1070t组织行为学 参考试题
  8. 在 django 中使用 firebase 发送通知
  9. uniapp h5 小程序点击按钮将图片保存到本地
  10. ThreadPoolExecutor源码分析
  11. 平板电脑的尺寸是怎么算出来的
  12. 使用bat批量删除修改子目录文件名后缀,超简单
  13. CF 285 E Positions in Permutations 题解
  14. HTML+CSS仿写京东登陆页面附代码(web前端期末大作业)
  15. win10下caffe环境搭建: win10 + vs2013 + caffe + CUDA 7.5 + cudnn v4 + Anaconda2 (python 2.7) 目前未使用GPU
  16. 项目成本管理__成本管理技术__第7条 完工尚需绩效指数(TCPI)
  17. IPV6----升级点,地址分类及部分协议配置
  18. 如果王自如支持友推,而罗永浩不支持的话......
  19. MBR和EFI启动过程
  20. 计算机B的IP地址是,IP地址202.117.17.255/22是什么地址?()。A.网络地址B.全局 - 信管网...

热门文章

  1. 热烈庆祝阳光网驿-行业软件交流平台与北京汉邦极通科技有限公司成功合作
  2. 30分钟掌握用Python写网络爬虫,入门到实战教程,黑客入门第一步
  3. python高维数据可视化_【机器学习】(十六)主成分分析PCA:高维数据可视化、特征提取...
  4. 全网营销干货:物联网时代,为什么要关注线下大数据?
  5. 企业全链路数字化营销一站式解决方案
  6. 软件工程-系统设计工程
  7. Win10 数字认证
  8. 蒙特卡罗 Monte Carlo 模拟
  9. 使用3CDaemon软件搭建FTP来上传/下载交换机文件文件
  10. 理解图像处理中的 双线性内插法(图文说明)