davidzhixing / 2021 Goto Github PK
View Code? Open in Web Editor NEWRecord my 2021 life in next half
Record my 2021 life in next half
record the search in google
know how
Overall, in 99.9% of cases, try and use XMLSerializer to parse XML. It’s less brittle than other options and follows a very similar
“pattern” to that of JSON serialization meaning anyone who has worked with one, can work with the other.
record weread notes at at least every week.
淘宝技术这十年
子柳
◆ 第0章 引言:光棍节的狂欢
师正紧盯着网站的流量和交易数据。
Amazon的财报
eBay的2011年财报
仅用于生成www.taobao.com首页的服务器就可能有成百上千台
其中最关键的便是LVS(Linux Virtual Server,
你的浏览器在同一个域名下并发加载的资源数量是有限的
我访问淘宝网首页需要加载126个资源,那么如此小的并发连接数自然会加载很久
分布在多个域名下,变相地绕过浏览器的这个限制
利用一些手段保证你访问的(这里主要指JS、CSS、图片等)站点是离你最近的CDN节点
淘宝开发了分布式文件系统TFS(TaoBao File System)来处理这类问题
基于一个分词库进行分词操作
把中文的汉字序列切分成有意义的词,就是中文分词
进行购物意图分析
浏览型
查询型
对比型
确定型
一千多台搜索服务器完成的
你仍然能够通过“已买到的宝贝”查看当时的快照。
商品详情快照进行保存和快速调用不是一件简单的事情
其中较为重要的是Tair(淘宝自行研发的分布式KV存储方案)。
你的这些访问行为都会如实地被系统记录下来,
淘宝研发了TimeTunnel,用于进行实时的数据传输,然后交给后端系统进行计算报表等操作
有些数据使用了压缩比高达1∶120的极限存储技术
云梯的基于Hadoop的由3000多台服务器组成的超大规模数据系统,以及一个基于阿里巴巴集团自主研发的ODPS系统的数据系统
能够知道小到你是谁,你喜欢什么,你的孩子几岁了,你是否在谈恋爱,喜欢玩魔兽世界的人喜欢什么样的饮料等
大到各行各业的零售情况、各类商品的兴衰消亡等海量的信息
带给各家银行和快递公司的流量也让他们如临大敌
◆ 第1章 个人网站
买一个什么样的网站
无须编译,发布快速,PHP语言功能强大,能做从页面渲染到数据访问所有的事情,而且用到的技术都是开源、免费的
买来之后不是直接就能用的,需要很多本地化的修改
把交易系统和论坛系统的用户信息打通
给运营人员开发出后台管理的功能(Admin系统
把交易类型
拍卖、一口价、求购商品、海报商品
一台负责发送Email、一台负责运行数据库、一台负责运行WebApp。
写数据的时候会把表锁住。
◆ LAMP架构的网站
他们看了PayPal的支付方式,发现不能解决问题
突然想到了“担保交易”这种第三方托管资金的办法
开发与银行网关对接功能
每天手工核对账单
一大堆银行卡摆在桌子上
第一招是免费
那么第二招就是“安全支付”
而淘宝的第三招就是“旺旺
收购了Skype之后也没有用到电子商务中去
最早做旺旺开发的人只有一个——无崖子,
为了支持他的工作,我们工作用的IM工具仅限于旺旺
开发出了一套旺旺表情
聊天室
◆ 武侠和倒立文化的起源
如果你在这个创业团队中,请什么样的人来做这件事
其中有一个网站就是eBay,那时eBay的系统刚刚从C++改到Java,而且就是请Sun的工程师给改造成Java架构的
Originally posted by @DavidZhiXing in #21 (comment)
convert a list of objects from one type to another using lambda expression
var origList = List<OrigType>(); // assume populated
var targetList = List<TargetType>();
foreach(OrigType a in origList) {
targetList.Add(new TargetType() {SomeValue = a.SomeValue});
}
var targetList = origList
.Select(x => new TargetType() { SomeValue = x.SomeValue })
.ToList();
This is using a combination of Lambdas and LINQ to achieve the solution. The Select function is a projection style method which will apply the passed in delegate (or lambda in this case) to every value in the original collection. The result will be returned in a new IEnumerable. The .ToList call is an extension method which will convert this IEnumerable into a List.
If you know you want to convert from List to List then List.ConvertAll will be slightly more efficient than Select/ToList because it knows the exact size to start with:
target = orig.ConvertAll(x => new TargetType { SomeValue = x.SomeValue });
In the more general case when you only know about the source as an IEnumerable, using Select/ToList is the way to go. You could also argue that in a world with LINQ, it's more idiomatic to start with... but it's worth at least being aware of the ConvertAll option.
Originally posted by @DavidZhiXing in #15 (comment)
find some interesting repos
At firt I type . and expect a ToDictionary method,but it's not shown;
Then I google it;
what the fuck thing is that , im not using system.Linq ....
anyway , let me record the result here:
Dictionary<string, ArrayList> result = target.GetComponents()
.ToDictionary(x => x.Key, x => x.Value);
if use .net core then
Dictionary<TKey,TValue>(IEnumerable<KeyValuePair<TKey,TValue>>)
今日鸡汤:如果内心没有动力,根本无法克服骨子里的惰性
整理twitter 点赞的消息
pine an issue
assign an issue
convert a task to issue
label
upload file / image
double link
Not a good goal, need refine:
learn from question and answer
软件需求最佳实践
徐锋著
◆ 1.2 透过表象,分析本质
有的是对原有需求的背离、有的是原有需求的遗漏、有的是业务流程变化引起
说明需求描述与沟通有问题
应该加强需求过程的管理,加强沟通手段的管理
因此应该加强需求捕获方法的组合应用,加强对业务模型的梳理。
需求变更集中在流程间:说明需要采用工作流引擎。
说明需要开发用户界面动态生成器
◆ 1.3 方法论与需求工作
只有全面地了解其局限性才不至于误用、滥用
但是在不同流程之间的数据接口方面还是需要另外的措施
流程块的抽取是十分关键的
因此工作流的分析与抽象是基础,工作流引擎只是实现层的手段,不要认为只要引入工作流引擎就可以解决一切问题
◆ 6.2 周期一:理清框架与脉络
还是要细化步骤吧工作流在实现的过程中重点在于找一个个原子级的流程积木,而工作流引擎只是针对工作任务对这些流程积木进行串接的过程
工作流在实现的过程中重点在于找一个个原子级的流程积木,而工作流引擎只是针对工作任务对这些流程积木进行串接的过程
要点在于能否识别出原子级的流程积木,如果你划出的流程积木被分解了
解决流程变化的问题关键在业务上的梳理
了解未来可能的变化
流程应以产出为中心,而非任务为中心
仅对一个业务活动进行分析是片面的
也就是关键流程产出的人能够更自动自发地执行工作流
任务应该由谁来执行
因为场景的不同,可能会执行不同的流程
Originally posted by @DavidZhiXing in #21 (comment)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.