不是技術也能看懂云計算,大數據,人工智能
我今天要講(jiang)(jiang)這三個(ge)話(hua)題,一(yi)個(ge)是云(yun)(yun)計(ji)算(suan)(suan),一(yi)個(ge)大(da)數據,一(yi)個(ge)人工(gong)(gong)智(zhi)能,我為(wei)什么要講(jiang)(jiang)這三個(ge)東西呢?因為(wei)這三個(ge)東西現在(zai)非(fei)常非(fei)常的(de)(de)火,它們之間好(hao)像互(hu)相有(you)關系,一(yi)般談(tan)云(yun)(yun)計(ji)算(suan)(suan)的(de)(de)時候(hou)也(ye)會提到大(da)數據,談(tan)人工(gong)(gong)智(zhi)能的(de)(de)時候(hou)也(ye)會提大(da)數據,談(tan)人工(gong)(gong)智(zhi)能的(de)(de)時候(hou)也(ye)會提云(yun)(yun)計(ji)算(suan)(suan)。所以說感覺他們又(you)相輔相成不可分割,如果是非(fei)技術的(de)(de)人員來講(jiang)(jiang)可能比(bi) ...
記一次內存溢出的分析經歷——thrift帶給我的痛orz
說(shuo)在前面的(de)(de)(de)話 朋友,你(ni)經歷(li)過(guo)部署(shu)好(hao)的(de)(de)(de)服務(wu)突然(ran)內存溢出嗎(ma)? 你(ni)經歷(li)過(guo)沒有看過(guo)Java虛擬機,來(lai)解(jie)決內存溢出的(de)(de)(de)痛苦嗎(ma)? 你(ni)經歷(li)過(guo)一(yi)個BUG,百思不得其解(jie),頭發一(yi)根一(yi)根脫落的(de)(de)(de)煩惱嗎(ma)? 我(wo)知道,你(ni)有過(guo)! 但(dan)是我(wo)還(huan)是要來(lai)說(shuo)說(shuo)我(wo)的(de)(de)(de)故事.................. 背(bei)景: 有一(yi)個項(xiang)目做(zuo)一(yi)個系統,分客戶(hu)端和 ...
機器學習漫游(1) 基本設定
最近的(de)(de)十(shi)幾年(nian)機器學(xue)習(xi)(xi)很是火熱,尤其是其中的(de)(de)一(yi)個(ge)分支深(shen)度學(xue)習(xi)(xi)在工(gong)業界取(qu)得(de)(de)很好(hao)應用,吸引了很多眼球。不(bu)過(guo)從(cong)其歷(li)程(cheng)來看,機器學(xue)習(xi)(xi)的(de)(de)歷(li)史并不(bu)短(duan)暫~從(cong)早(zao)期的(de)(de)感知(zhi)機到(dao)八(ba)十(shi)年(nian)代火熱的(de)(de)神經網絡,再到(dao)九十(shi)年(nian)代被提(ti)出的(de)(de)經典算法集(ji)成學(xue)習(xi)(xi)和支持向(xiang)量機;而最近的(de)(de)十(shi)年(nian)算得(de)(de)上是機器學(xue)習(xi)(xi)發展的(de)(de)黃金(jin)年(nian)代,軟、硬(ying)件計算條件大幅提(ti)高,尤 ...
高可用Redis服務架構分析與搭建
基于內(nei)存(cun)的(de)(de)Redis應該是目前各種web開發業務中(zhong)最為常(chang)用(yong)的(de)(de)key-value數(shu)據庫(ku)了,我們經常(chang)在業務中(zhong)用(yong)其(qi)存(cun)儲用(yong)戶(hu)登陸態(Session存(cun)儲),加速一些(xie)熱(re)數(shu)據的(de)(de)查詢(相(xiang)比(bi)較mysql而言,速度有數(shu)量級(ji)的(de)(de)提升),做(zuo)簡單的(de)(de)消息(xi)隊列(LPUSH和(he)BRPOP)、訂閱發布(PUB/SUB)系統等等。規模(mo)比(bi)較 ...
Android組件化框架設計與實踐
在目(mu)前移動互聯(lian)網時(shi)代,每(mei)個(ge) APP 就(jiu)是(shi)流量入口(kou),與過去 PC Web 瀏覽器時(shi)代不(bu)同的(de)是(shi),APP 的(de)體驗與迭代速度影響著用戶的(de)粘性,這同時(shi)也對從事(shi)移動開發人員提出(chu)更高要求(qiu),進而(er)移動端框架也層出(chu)不(bu)窮。 上圖顯示的(de)是(shi)傳統(tong)的(de)服(fu)務端架構和客戶端 App 架構對比(bi)。傳統(tong)的(de)服(fu)務端架構中最底(di)下是(shi)一個(ge) OS,一般 ...
科普:String hashCode 方法為什么選擇數字31作為乘子
1. 背景 某天,我(wo)在寫(xie)代(dai)碼的(de)(de)時候,無(wu)意中點開(kai)了 String hashCode 方法。然后大致看了一下 hashCode 的(de)(de)實(shi)現,發現并不是(shi)很復雜。但(dan)是(shi)我(wo)從源碼中發現了一個(ge)奇(qi)怪的(de)(de)數字(zi)(zi),也(ye)就是(shi)本文的(de)(de)主角31。這(zhe)個(ge)數字(zi)(zi)居然不是(shi)用常(chang)量聲明的(de)(de),所以沒法從字(zi)(zi)面意思上推斷這(zhe)個(ge)數字(zi)(zi)的(de)(de)用途(tu)。后來(lai)帶著(zhu)疑問和好奇(qi)心, ...
漫話JavaScript與異步·第三話——Generator:化異步為同步
ES6新增的特性中,Generator無疑是最為強大者之一,它與Promise結合起(qi)來,為令(ling)前端頭(tou)疼的異(yi)步(bu)回調難題提供了終極解決方(fang)案! ...
超高性能管線式HTTP請求(實踐·原理·實現)
這里的(de)高性能指的(de)就(jiu)是網卡有多快請求發送就(jiu)能有多快,基本上一(yi)(yi)般的(de)服務(wu)器在一(yi)(yi)臺客(ke)戶端的(de)壓力下就(jiu)會(hui)出現明顯(xian)延時。 該篇實際是介紹(shao)pipe管線的(de)原理(li),下面主要(yao)通過其高性能的(de)測(ce)(ce)試(shi)實踐,解析背后數據流量及原理(li)。最后附帶一(yi)(yi)個簡單的(de)實現 實踐 先直接看對(dui)比測(ce)(ce)試(shi)方(fang)法(fa) 測(ce)(ce)試(shi)內(nei)容單一(yi)(yi)客(ke)戶的(de)使用(yong)盡可能快的(de)方(fang)式向服務(wu)器發送一(yi)(yi) ...
深度工作:充分使用每一份腦力
浮躁已經成了普遍(bian)的(de)社(she)會(hui)現(xian)象。判斷一個(ge)人(ren)是(shi)否(fou)浮躁非常容易,看他(ta)一天主動拿起手(shou)(shou)機的(de)次(ci)(ci)數(shu)就可以了。據TED的(de)演講者(zhe)說,這個(ge)值一般是(shi)50次(ci)(ci),除了8小時的(de)睡覺(jue)之外,基本上每20分鐘就要(yao)去翻(fan)翻(fan)手(shou)(shou)機。 你會(hui)去用手(shou)(shou)機做什么?看微信,票圈,微博,知乎,淘寶,或只是(shi)來回刷首頁。我們不(bu)是(shi)名人(ren),沒人(ren)關(guan)心你在社(she)交網(wang)絡上的(de)行動 ...
DDD峰會歸來話DDD
一場大(da)(da)戲落(luo)幕,首屆DDD中國(guo)(guo)峰會如大(da)(da)會主題色一般的(de)紅。或許(xu)在(zai)(zai)12月9日這一天,全中國(guo)(guo)的(de)DDD粉絲大(da)(da)約有一半(ban)都匯(hui)聚在(zai)(zai)了(le)國(guo)(guo)家(jia)會議中心。聽起來是(shi)(shi)幸,其實(shi)是(shi)(shi)不幸,因為DDD在(zai)(zai)中國(guo)(guo)的(de)人群基(ji)數(shu)實(shi)在(zai)(zai)是(shi)(shi)太少了(le)。 因為要負責大(da)(da)會的(de)其中一個Track,期間又要接受(shou)采訪(fang),另外還有朋友到訪(fang),所以除了(le)前面的(de)兩個keynote ...
分布式、服務化的ERP系統架構設計
ERP之痛 曾幾何時,我(wo)混跡于電商(shang)、珠寶行業(ye)4年多(duo),為這兩個行業(ye)開發過兩套大型業(ye)務(wu)系統(tong)(ERP)。作為一(yi)個ERP系統(tong),系統(tong)主要功能模塊無非是(shi)訂單管(guan)(guan)理(li)(li)、商(shang)品(pin)管(guan)(guan)理(li)(li)、生產采(cai)購、倉庫管(guan)(guan)理(li)(li)、物流管(guan)(guan)理(li)(li)、財務(wu)管(guan)(guan)理(li)(li)等(deng)等(deng)。作為一(yi)個管(guan)(guan)理(li)(li)系統(tong),大家的(de)一(yi)般(ban)開發習(xi)慣(guan)就是(shi)使用.Net或Java技術,建立一(yi)個單塊(單進程(cheng))架構(gou)的(de) ...
淺談重構中踩過的坑
博主個(ge)人獨(du)立站點(dian)開通啦(la)!歡迎(ying)點(dian)擊訪問://shuyi.tech 文章首(shou)發于【博客園-陳(chen)樹義】,點(dian)擊跳轉(zhuan)到原文淺談重構(gou)中踩過的坑 最(zui)近(jin)重構(gou)了公司一個(ge)將近(jin)10年(nian)的核心(xin)功能(neng)模塊(kuai),踩了不(bu)(bu)少坑。在(zai)做(zuo)這個(ge)重構(gou)的時(shi)候好幾(ji)次都覺得做(zuo)不(bu)(bu)下去,好幾(ji)次壓(ya)力都非常(chang)大,心(xin)想著我該不(bu)(bu)會做(zuo)著做(zuo)著就退(tui)出編(bian)程屆了吧。 不(bu)(bu) ...
設計稿自動生成可用頁面的展望
這(zhe)篇文(wen)章(zhang)只打算(suan)描述我加入支付寶之后,在設計稿(gao)生(sheng)成代(dai)碼這(zhe)個方向(xiang)上(shang)自己做(zuo)(zuo)的(de)嘗(chang)試(shi)和(he)(he)看(kan)到(dao)的(de)團隊中(zhong)的(de)嘗(chang)試(shi)。不(bu)談行業(ye)歷史,不(bu)爭論方向(xiang)。文(wen)章(zhang)以(yi)現(xian)狀(zhuang)的(de)形成和(he)(he)我的(de)想法演進為主脈絡,文(wen)末會提到(dao)我所看(kan)到(dao)的(de)新契機。所以(yi)讀者(zhe)如果對現(xian)狀(zhuang)和(he)(he)推演沒興(xing)趣可以(yi)直接翻到(dao)后面(mian)《投石》一章(zhang)。 立足 三年(nian)前剛開始做(zuo)(zuo) Sketch 生(sheng)成代(dai)碼插件(jian) ...
.NET Core跨平臺的奧秘[下篇]:全新的布局
綜上所述(shu),要(yao)真正(zheng)實現.NET 的(de)(de)跨平(ping)臺偉業,主要(yao)需要(yao)解(jie)決兩個問(wen)題(ti),一(yi)是針對(dui)不(bu)同(tong)的(de)(de)平(ping)臺設計(ji)相應的(de)(de)運行(xing)時(shi)為中間語言CIL提供(gong)(gong)一(yi)個一(yi)致(zhi)性的(de)(de)執行(xing)環(huan)境(jing),而是提供(gong)(gong)統一(yi)的(de)(de)BCL以徹底(di)解(jie)決代(dai)碼復用的(de)(de)難題(ti)。對(dui)于真正(zheng)跨平(ping)臺的(de)(de).NET Core來說,微軟不(bu)僅為它設計(ji)了(le)針對(dui)不(bu)同(tong)平(ping)臺被(bei)成為CoreCLR的(de)(de)運行(xing)時(shi),同(tong)時(shi)還重新(xin)設... ...
什么是內存(二):虛擬內存
通過上一(yi)篇文(wen)章的(de)(de)(de)扯淡,我們(men)應該已經明白了存(cun)(cun)儲器的(de)(de)(de)層(ceng)次結構,技術(shu)細節很(hen)復雜(za),但是思想(xiang)(xiang)卻不(bu)難理解,因為(wei)就是很(hen)簡單的(de)(de)(de)緩存(cun)(cun)思想(xiang)(xiang)。那么本(ben)文(wen)我們(men)開始(shi)討論關于內存(cun)(cun)的(de)(de)(de)另一(yi)個話題. 虛擬(ni)內存(cun)(cun) 。其實思想(xiang)(xiang)也是很(hen)容易理解的(de)(de)(de)。 我不(bu)知道有多少人聽過虛擬(ni)內存(cun)(cun)這個概念,但是虛擬(ni)內存(cun)(cun)是計(ji)算機系統(tong)最(zui)重要的(de)(de)(de)概念之一(yi),并且它成功(gong)的(de)(de)(de)主要 ...
.NET Core跨平臺的奧秘[中篇]:復用之殤
在《.NET Core跨平臺(tai)的(de)(de)奧秘[上(shang)篇]:歷史的(de)(de)枷鎖》中我(wo)們談(tan)到:由于.NET是建立(li)在CLI這一標準的(de)(de)規范(fan)之上(shang),所以它(ta)天生就具(ju)有(you)了(le)“跨平臺(tai)”的(de)(de)基因。在微軟發布了(le)第一個針(zhen)對桌面(mian)和服務器平臺(tai)的(de)(de).NET Framework之后(hou),它(ta)開始 “樂此不疲” 地(di)對這個完整版的(de)(de).NET Framework進行不同范(fan)... ...
.NET Core跨平臺的奧秘[上篇]:歷史的枷鎖
微軟(ruan)推出的(de)第(di)一(yi)個(ge)(ge)版本(ben)的(de).NET Framework是(shi)一(yi)個(ge)(ge)面向(xiang)Windows桌面和(he)服務器的(de)基礎框架,在(zai)(zai)此(ci)之(zhi)后,為此(ci)微軟(ruan)根據(ju)設備自身(shen)的(de)需求對(dui).NET Framework進行(xing)裁剪,不斷推出了針對(dui)具體設備類型的(de).NET Framework版本(ben)以實現針對(dui)移動、平板和(he)嵌入式(shi)設備提供支持(chi)。除此(ci)之(zhi)外,在(zai)(zai)Window... ...
剖析Linux系統調用的執行路徑
本文主(zhu)要(yao)描述了操(cao)作系統(tong)是(shi)如(ru)何(he)通過系統(tong)調用(yong)這個接(jie)口為上層(ceng)提(ti)供服務的(de)。文章(zhang)通過printf函數調用(yong)過程(cheng)為例(li),詳細剖(pou)析了系統(tong)調用(yong)是(shi)如(ru)何(he)一(yi)層(ceng)層(ceng)由用(yong)戶態(tai)(tai)深入到內核態(tai)(tai)的(de)過程(cheng),同時(shi)涉及到Linux處理中斷(duan)的(de)一(yi)般流程(cheng)。 ...
初探性能優化——2個月到4小時的性能提升
一次項(xiang)目架構和(he)性(xing)能(neng)上的(de)優化,該項(xiang)目功能(neng)更描述十(shi)分簡單,但可以(yi)說麻雀雖小五(wu)臟俱(ju)全(quan),可以(yi)掌握Java很多優化性(xing)能(neng)的(de)知識。 ...
一個程序員送給大學生弟弟的那些話
前(qian)言: 昨天一個大學生弟娃問了我(wo)一些(xie)問題,他是想(xiang)賺點錢(qian),因為讀書嘛(ma)沒什么錢(qian),又談了戀愛,想(xiang)通過一些(xie)方式賺點外快。 雖然平時也沒怎(zen)么聯系,但(dan)是作為大濕人,也不免多啰(luo)嗦幾句,把我(wo)能(neng)想(xiang)到的一些(xie)觀(guan)點告訴(su)他,希望對(dui)他能(neng)有所(suo)啟發(fa)。 在(zai)博客園里,我(wo)越來越傾向于寫更多“硬(ying)菜”,和技術緊密相(xiang)關的文(wen)章。 但(dan)也如我(wo)博客園 ...
