文档章节

OSChina 周六乱弹 ——我们能算儿童票么?

小小编辑
 小小编辑
发布于 01/13 07:39
字数 7566
阅读 2356
收藏 10

Osc乱弹歌单(2018)请戳(这里

【今日歌曲】

@takeMeAway  :小蚂蚁迷路找不到蚁窝,可着急了…恰巧看到它的朋友经过,于是大喊一声:"哥们儿!"你…你都如何回蚁窝?" 它的朋友反问道:"带…带着笑或是很沉默?" @小小编辑 推荐歌曲分享张智霖的单曲《后来》

《后来》- 张智霖

手机党少年们想听歌,请使劲儿戳(这里

@周其  :今天天气特别好

如果大早晨不是被闹钟喊起来的,

我就更开心了,

每天对闹钟的怨念MAX。

“惹不起,闹钟。”

@劫渡仙  :十点上班的公司那是真的爽歪歪

是的,

有时间睡懒觉什么的最开心了。

到了十点就该紧张起来!

@黑黑的脚后跟 :10点抢票,好紧张

@我是程序yuan :希望时间能够静止

这样抢票的难度会从噩梦降低到简单吧?

但事实,

@马晓倩osc :票太难抢了。。。。

这样的话,

我们只能换交通工具了,

“我们能算儿童票么?”

@无敌小青蛙 :火车票,火车票,火车票,连续几天都是被秒完。

能坐火车好激动呀,

@clouddyy :羡慕你们可以坐高铁,我长那么大还没坐过火车......

对对对,

平时你都这样,

“你通常都是别喵的坐骑。”

反正抢不到火车票,

大家一肚子火,

@红薯 :每年到抢票的时候就有一堆人骂 12306。

是呀,

大家都觉得天猫都比12306牛逼的多了。

今天小小编辑还因为这个去专门找了一下大家的权威说法,

在作者:西西河的一篇文章里看到,

《别再吐槽12306了,有本事你来写架构》

我曾在淘宝写过一段时间代码,2012年在一家百强民企做电商副总,当时在极为艰苦的条件下带队开发了一个B2C网站,走支付宝和银联支付通道,年营业额千万级(当然实在太少了,我只是说这个网站投入了实际的运营)。

我曾在淘宝写过一段时间代码,2012年在一家百强民企做电商副总,当时在极为艰苦的条件下带队开发了一个B2C网站,走支付宝和银联支付通道,年营业额千万级(当然实在太少了,我只是说这个网站投入了实际的运营)。

也就在那个时候,我对12306嗤之以鼻,觉得他们做得太烂了,认为自己能带队花几百万半年时间做个好的出来。于是我狂妄地想做一个开源的订票系统给他们。我花了一个星期时间思考建立数据模型,思考到库存这一步的时候,我才发现,12306的库存复杂性比淘宝、京东高很多倍,运算量也大很多倍。传统的分布式数据库、缓存、负载均衡技术并不能恰好满足12306的需求。
在平时,12306也就是个正常的电商网站。但一到黄金周,12306就是一个全站所有商品都秒杀,所有SKU都是动态库存的变态。
即使不考虑线下既有的电话、代售点等渠道,要实现一个12306,最少最少也是千万级别的硬件投入(这是当时的估算,没有精算,可能与实际相差较大,总之,我说得不一定对,12306的业务也许没我说的那么复杂,但也绝不是某些人喷的那么简单),软件和人力另算。那些叫嚣只要40台服务器、只要2个架构师4个程序员、大谈分库分表和前端CDN的人们,只是纸上谈兵罢了。所谓初生牛犊不怕虎,做了三年CMS和BBS,就以这个经验来喷12306,未免太天真了。
媒体人喷12306,是他们不懂技术,没有能力和耐心来分析背后的难度。技术人员喷,则是因为大部分的技术人员在短时间思考时,容易陷入过于乐观的误区,经典的例子就是估算工作量,程序员们往往容易估算出一个超短的工期,把写程序的工作乐观地想象成了打字员照稿敲键盘的工作。

知乎那篇文章,我觉得不是洗地。排名第一和第二的答案都说得很客观。淘宝技术是比12306强大很多倍,淘宝现在的系统也是花了10倍于12306的钱、时间和人才做起来的。根本原因还是铁路运力不能满足春运需求,淘宝也解决不了这个问题。
12306这一年来进步非常大。从前段动画验证码、分时段抢票,到后端去小型机、虚拟化、内存数据库的运用。可以说,12306是中国政府机关做的最强大的网站(电商系统),能在短短一两年内做出这样的改变,几乎是个奇迹,就连一些市场化的民企都望尘莫及,甚至一些上市公司都比不上它!(比如51job和ctrip)。
事非经过不知难,在网上批判12306的人,大部分还是形成了【国企 = 垄断 + 腐败 + 低效 】的思维定势。小部分是真的轻视了它的难度。
至于12306一期工程3个亿(含硬件)贵不贵我不评价,我只提供一个数字供参考,百度一年的研发费用(不含硬件)是10亿,这个数字来自百度财报。网上能查到。3亿看起来好大一个数字,真用到超大型的电商系统、搜索引擎系统里面,其实也不算什么天文数字了。
再解释一下,为什么秒杀压力大,以及为什么12306的动态库存很复杂。
秒杀

2013年12月25日前后,天猫搞了一个圣诞季积分兑换活动,持续几天。25号上午10点12分,放出了15000个天猫魔盒(淘宝集市有人卖,大概190-230块),从成交记录上看,是19秒内全部抢完。
实际上,我也参加秒杀了,那天的题目特别简单(请输入xxx汉字的拼音首字母),我应该是5秒内答题完成并提交订单,结果告诉我排队的人太多,挤不进去,并提示14秒以后重试。人太多就是因为题目太简单了,门槛越低,5秒内挤进去的人也越多嘛,如果题目换成【2克浓度为3%的U235在大亚湾核电站能发多少KW的电】,5分钟之内也不会有1万5千人跟我竞争。
我想,14秒以后哪还有我的事情呀,于是重新答题秒杀,结果出现了服务器错误的页面。反复刷新几次,就告诉秒杀结束了。
在群里问了一下同事,有不到10个人回答我,都说没秒到(也可能秒到的人闷声发大财,不回复我)。

淘宝是什么技术水平呢,淘宝有至少4000技术人员,至少4万台服务器(这都是两年前的公开数据了,按规定可以谈论),2013年11月11日成交额351亿,2012年全年成交额超过1万亿。
淘宝拥有各种自主研发团队:服务器、交换机(网上可以搜索到淘宝公开的绿色服务器开放标准);操作系统(Linux Kernel taobao版,yunos手机操作系统是阿里云的,暂时不计入)、Web服务器(Tengine)、Java语言虚拟机(JVM taobao版)、数据库(MySQL内核 taobao版,google和facebook也有自己的版本,HBase淘宝版、还有自己全部从头开发的OceanBase)、负载均衡器(LVS,LVS始创人就在淘宝,担任研究员)、Java运行容器(Jboss,其创始人之一,王文彬,也在淘宝,担任副总裁)。
淘宝还有数不清的开源项目和中间件,如高性能Java通信中间件HSF、分布式数据库中间件TDDL、异步消息系统notify等等等等。
以淘宝这样的技术水平,也不能做到秒杀时让每个用户都没有拥挤感,为什么呢?
一是要尊重物理原理,一台服务器一秒钟能承受的计算量是有极限的,任你怎么优化,采用多高效的算法和编程语言,都突破不了某个极限,比方说汽车发动机驱动的F1赛车至今也不能突破400公里的时速(超音速推进号那个1千多公里的时速不能算,那是飞机引擎驱动的)。再往深了说,就不容易懂了。感兴趣的可以从著名的C10K问题开始看起。
二是要考虑经济效益,十一黄金周的时候,北京主城区到八达岭长城的路堵得严严实实,但不能因为黄金周的高峰,就把这段路修成长安街那样10车道的高速公路。否则的话,花费天文数字(真的是天文数字,12306那3个亿大概只够修1-3公里)。修了一段路,黄金周是可以飙到80公里/小时了,可平时呢,拿来给两边的居民晒谷子?
淘宝目前的硬件和带宽数量,已经超出日常运营的需求了,就是留了相当大的余量给大促销(众所周知的是双十一,双十二,其实基本每个季度都有大促销,每个月都有促销,甚至天天都在促销——聚划算)。amazon当年就是为了应对黑色星期五的大促销购置了大量的服务器,平时订单量没那么大了,amazon就把富余的服务器拿来搞云计算了。顺便说一下,阿里云是当今中国第一世界数一数二的云计算服务商,和amazon走的路也有点像。

动态库存
淘宝秒杀天猫魔盒的时候,只有一个商品(行话叫做SKU),它的库存是15000个。有一个人秒杀到了,库存就减1,19秒卖完的,一秒要成功产生789个订单(下订单的请求可能是8万个,只是可能啊,非实际数字,也可能是1万个,用于说明一下壮观程度)。想象一下,你在广场上卖火车票,一秒钟有8万人举着钱对你喊:卖给我!
上过大学的人都知道,比秒小的时间单位还有毫秒、皮秒、飞秒。但交易系统登记一个交易可不像电子绕着原子核跑一圈那么简单,它要做这些事:检查是否恶意访问、取到系统时间、取到顾客默认收货地址、核对顾客秒杀资格(当时的规定是天猫T2.T3达人)、生成订单号、把顾客ID系统时间订单号收货地址写入订单系统、扣除顾客天猫积分、商品库存减一、给顾客打标记(每人只能秒一个,下次不能秒了)等等,这每一件事都要花费毫秒级别的时间,这些操作加起来的时间可能是接近1秒级别的,但由于淘宝的服务器比较强悍,而且采用了分布式和集群技术,结果比1秒理想一点。但即使有1万台服务器,也不能把这个时间稀释成万分之一秒,因为,商品只有一种,它有15000个库存,对应的数据库记录只有一行,所有的交易请求都要到这里来处理。
能不能把这15000个拆分成5000个商品并分配到5000台服务器上呢?那样不就可以5000台服务器同时处理了吗?答案是不能,首先,5000个商品,意味着有5000个商品详情页,5000个购买按钮,这对前期的营销、引流是个灾难。基本上就没法做引流入口了,显然这违背了商业管理原则,人为增加了信息混乱程度。其次,天猫魔盒秒杀也不是啥大事,即使按官方标价399元来计算,也就6百万的交易。如果6百万的交易要花费那么大的配套成本,那就太不划算了。再次,淘宝有十几亿商品,这十几亿商品的展示交易和管理,本来就是分布到上万台服务器上去了。没有必要再把每个商品按库存拆成多个商品了。
这789人抢到了,还不一定会付款(99积分换天猫魔盒还好一点,不需要去网银,成本也极低,大部分是会付款的,3999秒杀iPhone 5S就不一定,有人可能网银有问题,有人可能改变主意不想要了),所以就又带来订单取消重新恢复库存的问题。还有想要的消费者们,会认为还有机会,继续在前台刷一会儿,最终这个秒杀会被热情的消费者们猛刷30秒到1分钟。

商品数据库
我以北京西到深圳北的G71次高铁为例(这里只考虑南下的方向,不考虑深圳北到北京西的,那是另外一个车次,叫G72),它有17个站(北京西是01号站,深圳北是17号站),3种座位(商务、一等、二等)。表面看起来,这不就是3个商品吗?G71商务座、G71一等座、G71二等座。大部分轻易喷12306的技术人员(包括某些中等规模公司的专家、CTO)就是在这里栽第一个跟头的。
实际上,G71有136 * 3 = 408种商品(408个SKU),怎么算来的?请看:
如果卖北京西始发的,有16种卖法(因为后面有16个站),北京西到:保定、石家庄、郑州、武汉、长沙、广州、虎门、深圳……都是一个独立的商品,
同理,石家庄上车的,有15种下车的可能,以此类推,单以上下车的站来计算,有136种票:16+15+14….+2+1=136。每种票都有3种座位,一共是408个商品。
好了,再看出票时怎么减库存,由于商务、一等、二等三种座位数是独立的,库存操作也是一样的,下文我就不再提座位的差别的,只讨论出发与到达站。另外,下文说的是理论世界的模型,不是说12306的数据库就是这么设计的。
旅客A买了一张北京西(01号站)到保定东(02号站)的,那【北京西到保定东】这个商品的库存就要减一,同时,北京西到石家庄、郑州、武汉、长沙、广州、虎门、深圳等15个站台的商品库存也要减一,也就是说,出一张北京到保定东的票,实际上要减16个商品的库存!
这还不是最复杂的,如果旅客B买了一张北京西(01号站)到深圳北(17号站)的票,除了【北京西到深圳北】这个商品的库存要减一,北京西到保定东、石家庄、郑州、武汉、长沙、广州、虎门等15个站台的商品库存也要减1,保定东到石家庄、郑州、武汉、长沙、广州、虎门、深圳北等15个站台的商品库存要减1。。。总计要减库存的商品数是16+15+14+。。。。+1=120个。
当然,也不是每一张票都的库存都完全这样实时计算,可以根据往年的运营情况,在黄金周这样的高峰时段,预先对票做一些分配,比如北京到武汉的长途多一点,保定到石家庄的短途少一点。我没有证据证实铁道部这样做了,但我相信,在还没有12306网站的时候,铁道部就有这种人工预分配的策略了。
想象一下,8万人举着钱对你高喊:卖给我。你好不容易在钱堆里找到一只手,拿了他的钱,转身找120个同事,告诉他们减库存,而这120个同事也和你一样被8万人围着;也和你一样,每卖出一个商品要找几十个人减库存。。。这就是12306动态库存的变态之处。比你平时买东西的任何网站的库存机制都复杂几十上百倍。

抢票插件
机器永远比人快,当你好不容易从8万人里突出重围,来到了柜台前,你发现,我操,来了10万根绑着钱的竹竿,而且当有退票出来的时候,你要闯过3层人肉才能接近柜台,竹竿在8个人身后一伸,钱就到了柜台前。你低头看了一眼手机,票就没了,竹竿却永远在那里伸着,永不低头,永不眨眼。如果没有这10万根竹竿,虽然你很可能还是抢不到票,但不至于沮丧成这样:我TM为什么总是手最慢的一个?!!
防机器人抢票,也不是加个图片验证码那么简单。我写过文章系统性分析过,图片验证码有6种机器暴力破解的办法,抢票插件用的是我说的第三种,OCR识别。Google采用的Wave波形字母已经能比较好地防住机器OCR了,ems.com.cn上的验证码就是反面教材,机器OCR成功率接近100%,12306的比ems的图片验证码强一点。不过,验证码设置得复杂一点吧,人们要喷:这只是便宜大学生和办公室白领,农民工连26个字母都认不齐,怎么搞?搞动画验证码吧,也有人喷,视力不好的人怎么办?最后验证码搞得太简单了,皆大欢喜了,其实最高兴的是开发抢票插件的公司。
就算采用了机器完全不可能识别的验证码,也防不住社会工程学的破解办法。招募一堆网吧打游戏的青少年朋友,每成功输入50个验证码给1块钱,或者等值的虚拟货币、游戏装备,我保证想赚这个钱的人数不胜数。这点钱对转卖车票的利润而言,是可以接受的成本。有没有什么技术可以防住社会工程学的破解办法呢?能防住网吧青少年的验证码只有【2克浓度为3%的U235在大亚湾核电站能发多少KW的电】。

没有历史包袱从零起步的交易系统?
以上讨论只是把12306当成和淘宝一样没有历史包袱从零起步的交易系统,实际上,它不是,它后面的票池,还有电话售票、火车站售票、代售点售票等多个传统渠道要服务。除了客运服务,12306还有全国最大(很可能也是全球最大)的大宗物资货运系统。
架空政策(包括定价政策、警方打击黄牛政策、身份验证政策)谈技术,是不可能解决春运抢票困局的,要想让春运的时候每个人在12306抢票都毫无拥挤感(但不一定能抢到票,铁路运力摆在那),那就是逼着12306买一大堆服务器对付春运,春运过去后,成为跟amazon一样牛逼的云计算服务商。和逼北京修一条10车道的高速公路去八达岭长城一个道理。
目前的12306技术上是还有问题,比如,抢票高峰,输入个身份证号和图片验证码都卡得要死(本人亲测),服务器端繁忙,你浏览器端卡什么呀。
但人家在进步。相信2014年春运的时候,技术已经不再是一票难求的主要问题。在铁路运力不可能神速增加(孙中山先生计划的20万公里铁路,土共修了快70年,才修到10万公里)的情况下,要做到春运更公平地买票,需要停靠政策调整。

解决方法
下文针对的是春节国庆这种非常暑期。其它时期,大部分线路保持现状就行了,问题不大,极少部分票源紧张的线路可以按春运处理:
1.拍卖法,价高者得之
当硬座票拍出飞机票价格的时候,相信票就不难买了(可惜就是贵了),也没有那么多黄牛了。要说淘宝有什么能帮12306一下子搞定技术问题的,淘宝的拍卖系统可以帮忙,浙江省高院在淘宝拍卖一年多,成交26亿。
可惜这个方法不可能实行。现在的高铁票价都被媒体和意见领袖喷成啥样了,何况是拍卖。再说,火车票毕竟是生存之刚需,票价20年来不涨本来就有照顾补贴的成分在里面,全拍卖可能也是不妥当。
2.抽签法,运气好者得之
开车前2个月开放报名,开车前7天抽签,中途可取消。预存票款,抽不中退款。上传身份证和正脸自拍照,机器核对。
这样的话,拦截黄牛的成功率就高很多了,黄牛可以预存票款,可以找到大量真实身份证号,你黄牛再让每个给你身份证号的人把身份证照片和脸部自拍也给你试试?即使有人真想找黄牛,给身份证照片还是会犹豫一下吧。而且中间手工操作多了很多,黄牛成本提高,还不一定搞得到票。反正都是碰运气,我想真正的消费者还是会选择自己先去碰运气吧。
这个方法实施难度也大,无论怎么设计抽签规则,必然有人大叫“有黑幕,不要相信政府”。
开车前7天出抽签结果,改变行程的人应该在7天前就能决定改还是不改了。没抽到的也还有时间想别的办法。当然不一定是7天,15天,10天也可以,具体几天要有数据模型来算。
3.拍卖 + 抽签
软卧、高铁商务座等高价位的,拍卖,反正买这个的是经济能力相对较强的。那就拼谁经济能力更强吧。
硬座、站票抽签。
4.凭身份证进站,车票跟发票一样,是报销凭证,不是进站凭证;退票后钱进入12306账户,不可提现,只可该乘客下次乘车用;黄金周期间,个人账号最多订购10张票,这个办法可以打击黄牛囤票再转卖。运行一段时间后,按账户余额弄个排行榜就知道谁是黄牛了,可惜这个需要车站设备改造配合。

估计让你抢到票回家

也是为了吃好吃的,

@达尔文:吃了份鸡排 回家又吃了一大碗猪蹄 饭后又吞了个橙子 这胃口好得我自己都害怕。

使劲儿吃,

估计穿泳装的时候就看出来差距了,

@开源中国首席总指挥:恭喜你,“特别能吃苦”你已经做到前四个字了。

特别能吃,

@一点也不月半君:本人真的很别扭,吃一顿好的花大几百完全不心疼,甚至吃完还想吃发了工资继续吃。然而买件衣服就觉得太浪费了肉疼

对对对,

这个病的并发症就是

“看我对面的人,都觉得像食物。”

吃胖了以后,见熟悉的人多不好意思。

@一点也不月半君  :明天本人将挺着肥胖的身躯和一位瘦了十几斤姐妹见面,,,明天我将努力克制一点,尽量不要当着姐妹的面立即自杀

害怕他们看不起你么?

@开源中国首席屌炸天:因为他是一只猫

 

【小树的世界之旅】

参与#乱弹大吐槽#的快捷方式

0、@小小编辑 :春运的前8天(2月1日至8日)火车票已预售299.8万张,东北、西南等多个方向尚有余票,铁路部门将采取动车组重联或增开客车等方式增加热门方向运力,云贵等方向临客预计将提前开行。#乱弹大吐槽#

神吐槽 @ 宇智波康康:甲:没抢到票 乙:啊?!那你怎么回去的? 甲:报的旅行团 乙:……

1、@小小编辑  :三 家餐馆挂横幅戏谑对方"不好吃",卖排骨饭的小王说,这仅仅是一种自嘲、自黑的揽客方式,不存在恶意竞争。排骨饭在最北边,横幅上打着一个箭头,指向南边 两家店,写着:“他两家不好吃”。卖黄焖鸡的小李说,年轻人开店,用一点搞笑、好玩的方式,可以活跃一下平日的气氛,吸引路人的注意。#乱弹大吐槽#

神吐槽@ 玖越:来,互相伤害啊

2、@小小编辑  :近 日,一名将做爸爸的男子在微博上掀起了一场波澜。事情的缘由是这样的,这名男子的媳妇刚确认怀孕,他在小区张贴倡议书,要求住户们都把宠物猫和狗永久的送 走,实在不方便,也请在他媳妇生完孩子后再接回来。并要求小区的住户们不要遛狗,更不要投喂流浪动物,并说“请为了大环境做出一点力所能及的贡献”。#乱弹大吐槽#

神吐槽 @ 椰酥SAMA:他媳妇:这些猫狗的气味会导致胎儿基因编译,所以到时候dna可能会有点不一样

神吐槽@ liwei2000:你家是有皇位要继承吗?所以要这样迁怒猫狗

 

【小树的角色Play剧场】

(本期剧本导演:@小小编辑,友情客串:@ 宇宙蒙面侠X

@ 宇宙蒙面侠X:“老板,你这水果新鲜吗?”

老板:“放心,绝对新鲜。”

@ 宇宙蒙面侠X:“我这是买给生病住院老婆的,你这水果打农药没?”

老板:“哎呀,没打,你回家自己打吧。”

 

情绪不好?

关注同学们的生理心理健康

请进入大家喜闻乐见的【小树医生心理生理医务室】

我妈怀疑狗子最近这么反常是抑郁了:大清早的一点都不活泼,玩具不乱啃了,溜达也不出门了,就连破坏都不搞了!非让我预约个医生来瞅瞅。第二天去了咔咔检查一通,我赶紧询问情况
医生:“约的九点为什么十一点才来?”
我:“太冷了起不来床嘿嘿嘿嘿”
医生:“狗也是” ​​​

---- ---------分割线-------------- ----

分手后,前任给她现任男友打电话嘱咐:“她胃不好,每天早上要喝一碗粥,晚上记得给她熬生姜汁”,现任男友:“我花5万块钱给根治了”

---- ---------分割线-------------- ----

记得有一次小学开家长会,好多家长都坐在一个课堂等老师发表讲话,突然我爸烟瘾犯了,拿出一根烟抽了起来,老师一下子看过来,盯着我爸说:“有些人不懂规矩。”我爸恍然大悟,赶紧给所有家长都分了一根,说道:“来,都点上!”然后就没有然后了。。。

---- ---------分割线-------------- ----

我家狗去厨房偷菜,偷了一个青尖椒,被我发现以后叼着就跑,我追着追着想着青尖椒都被它叼过了,不想要了,就没再追了。它以为我认输了,就特意把青尖椒叼到我面前咬了一大口,然后就被辣着了,可凶,冲青椒吼了老半天,青椒硬是没理它。。。

 

【看片】

世界最手残乘客:美国军官坐战机误将自己弹射出座舱!

手机党少年们想看视频,请使劲儿戳(这里)。

 

(以上部分内容来自网络。)

 

----------小小编辑写在篇末的话------------

 

【今天你客串】

@ 宇宙蒙面侠X(就你了)

 

感谢】

 抢楼大作战 Winner!@ 孤星闵月 (hi沙发好)

@ 不在乎y (嗯嗯嗯 值班编辑起猛了。)@ 壶漏子 (段子手好)@ 一碗白粥 (白粥好)@ clouddyy (哇偶 超厉害,你也算是巨兽了吧)@ 非有非非有 (+1 蛤蛤)@ lottepie (恭喜恭喜)@ 过期的咸鱼 (咸鱼好)@ Soi (同意。懒觉万岁)@ 时间管理者 (哈哈哈)@ 毅丝不挂 (毅哥好)@ nnnm (同意。过去的那些网红 哈哈哈 红了及时消费还是有市场的)@ 随风丶默 (好主意)@ 宇宙蒙面侠X (萌新好。)@ 花间小酌 (那还不打赏呀呀呀)@ 落落酱 (为嘛是洗衣机台?洗衣机不是装个管子就行了么。我家都是没人盯着。。。全凭工人自觉 哈哈哈哈哈哈哈)@ 罗马的王 (大王好雅兴)@ 月生无界 (我也听过)@ 半张一块 (我认识 蛤蛤)@ 古塔山上的麻雀 (hi )@ 白芍可 (哈哈哈 貌似有举报)@ -wzp- (这个应该有市场 感觉挺厉害呢)@ 周其 (我觉得应该是Dior的343或者642  我记得和以前买的一个 Chanel差不多,结果找了半天。喵的 完全不是)@ Jackpot_ (看前面推荐吧)@ zzeric (哈哈哈哈哈哈哈哈哈 友善的笑)@ 局长 (局长好)@ 曾经蜡笔没有小新 (哈哈哈 小新加油)@ 第一穷 (中午好。)

© 著作权归作者所有

共有 人打赏支持
小小编辑

小小编辑

粉丝 6496
博文 1479
码字总数 3354634
作品 0
深圳
加载中

评论(25)

看与不见
看与不见
做晚饭去了
雪落青山
雪落青山
认真看完了12306的分析,讲真的:刚开始用的时候,也是各种喷;工作一段时间后,感觉确实了不起。。。
kidfruit
kidfruit

引用来自“freezingsky”的评论

看那个12306洗地的,真是让人气愤。一种好像理所当然的样子!

@freezingsky 是真难搞,就算要阿里来搞也一样难
f
freezingsky

引用来自“oschina_”的评论

引用来自“freezingsky”的评论

看那个12306洗地的,真是让人气愤。一种好像理所当然的样子!

要不你来呗��

回复@oschina_ : 复杂度,我承认。但这不是问题的关键,持续性改进是必须的,用户对期望值有诉求是正常的。动不动就说你来呗!难道我要评价一台冰箱,我还得自己先会制冷么!
oschina_
oschina_

引用来自“freezingsky”的评论

看那个12306洗地的,真是让人气愤。一种好像理所当然的样子!

要不你来呗��
f
freezingsky
看那个12306洗地的,真是让人气愤。一种好像理所当然的样子!
非有非非有
非有非非有
加班打卡
clouddyy
clouddyy
12306的内容值得好好看看
clouddyy
clouddyy
小小萌神好周末好!昨天电话通知,还有四个月交房,其实和现在也没啥区别,还是一个人住……
lottepie
lottepie
加班路过
OSChina 技术周刊第十三期 —— 每周技术精粹

每周技术抢先看,总有你想要的! 移动开发 【翻译】appcompat v21: 让 Android 5.0 前的设备支持 Material Design... 【软件】可直接商用的《动漫之家》APP 开源,基于 CrossApp! 【博客】i...

OSC编辑部
2014/12/14
4.4K
2
OSChina 技术周刊第十一期 —— 每周技术抢先看

每周技术抢先看,总有你想要的! 前端开发 【软件】Chartist.js —— 基于 SVG 的响应式图表库 【博客】node.js构建http服务器(一) 【博客】AngularJS SEO 简易教程 【资讯】Semantic UI 1...

OSC编辑部
2014/11/30
2.9K
0
OSChina 技术周刊第十期,每周技术抢先看!

每周技术抢先看,总有你想要的! 移动开发 【软件】Android 表单验证框架 - AValidations 【软件】Git@OSC 的 iPhone 客户端 【软件】Git@OSC 的 Android 客户端 【博客】使用gradle构建and...

OSC编辑部
2014/11/24
6.2K
10
OSChina 技术周刊第十二期 —— 每周技术抢先看

每周技术抢先看,总有你想要的! 移动开发 【博客】Android仿微信录音功能,自定义控件的设计技巧【OSC 新客户端部分功能解说哦】 前端开发 【翻译】AngularJS – 如何处理 XSS 漏洞【我就是...

OSC编辑部
2014/12/07
2.2K
3
OSChina 技术周刊第十一期

每周技术抢先看,总有你想要的! 前端开发 【软件】Chartist.js —— 基于 SVG 的响应式图表库 【博客】node.js构建http服务器(一) 【博客】AngularJS SEO 简易教程 【资讯】Semantic UI 1...

OSC编辑部
2014/11/30
0
0

没有更多内容

加载失败,请刷新页面

加载更多

计算卷积神经网络浮点数运算量

前言 本文主要是介绍了,给定一个卷积神经网络的配置之后,如何大概估算它的浮点数运算量。 相关代码:CalFlops,基于MXNet框架的 Scala 接口实现的一个计算MXNet网络模型运算量的demo。 正文...

Ldpe2G
今天
1
0
Sql语言与MySql数据库

1. 数据库简介 1. 数据库,就是存储数据的仓库,只能通过sql语言来访问,数据库也是一个文件系统。通常,MySQL、Oracle等数据库,也被称为关系型数据库,其保存的不仅仅只是数据,还包括数据...

江左煤郎
今天
1
0
IDEA 取消自动import .*

打开设置 > Editor > Code Style > Java > Scheme Default > Imports ① 将 Class count to use import with "*" 改为 99 (导入同一个包的类超过这个数值自动变为 * ) ② 将 Names count ......

乔老哥
今天
3
0
PostGIS学习笔记(开篇)

PostGIS事实上算是笔者开始写博客的第一篇内容。而事实上那篇博文的内容并不丰富,笔者对PostGIS的了解仍然不多,然而17年在OSGeo课程学习时对PostGIS又有了进一步了解,并逐步发现它的强大。...

胖胖雕
今天
3
0
【Centos】在nginx服务器中配置php和mysql

接上一章《【Centos】利用Vultr服务器和namesilo布网》(https://my.oschina.net/u/3776619/blog/2051986),在Centos中配置好nginx,并在iptables中开启了80端口,和为了远程mysql操作方便开...

yongh701
今天
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部