『壹』 一般程序員的工資是多少
程序員工資是不確定的,要根據程序員的歷、能力、工作經驗、是否剛畢業、工種,工資是不一樣的,還與地域和公司有關,但是總的來說,程序員工資都是很高的,是很多人都羨慕的職位。
1、比如本科畢業、無工作經驗的如下所述:
二三線城市的程序員一部分的工資在5000-6000(稅前)左右,稍微多一點的在7000-8000左右。
北上廣深的本科剛畢業一般在5000-9000左右,這個波動太大的,真不好說,一般8000-9000看你能力和學歷。
2、但是還和公司有關,比如bat,本科剛畢業的非sp的offer,工資可以給11k-13k左右。
3、還與工種有關,比如你是前端web、伺服器端的不同種類的程序員(當然,小公司可能就不會分這么細了,一個人多種活),如果分的話,可能二者的工資還不一樣。
『貳』 屬鼠開公司取名字大全,屬鼠的人公司名字大全
當你有了一個好主意並准備創業時,你面臨的之一個問題將是給你的公司取什麼樣的名字。
為什麼一個好的公司名稱對一個初創公司來說很重要?
我認為主要有三個原因:
一、更有辨識度
對於初創企業來說,用戶對項目的識別是一個關鍵環節。一個好的公司名稱可以很快幫助公司區別於其他競爭產品在早期階段。
2、 在消費者心目中建立意識更容易
在產品、服務、價格等因素很難拉開差距的情況下,好的名字更容易在消費者心中建立認知,比如「」 = 「搜索引擎」,畝磨「知乎」 = 「高質量問答社區」,「微信虧耐枝」 = 「社交」等等。如果創業公司能將自己的公司名同消費者內心的某個領域建立起強 的話,競爭對手就很難反超。
3、 節省大量費用
好的名字不僅讓消費者容易記住,而且在類似場景中也能被召回。他們甚至可以在社交 絡上進行話題討論,這樣可以節省大量費用。
創業公司的名字很重要。命名時應該考慮什麼?
參與意義上的李萬強在創作之初考慮小米的名字時提出了一些問題,可以作為參考,下劃線部分作為參考:
創業之初想一個好公司的名字是不容易的。我們的主要考慮是:
一。中文名字應該易於記憶和傳播;
2。可支持的域名;
三。商標可以注冊;
四。便於推廣;
5個。已經熟悉了生活,有了色彩和情感。
易記易傳當然非常重要。另外,如果這個名字能時行,也很不錯,這讓人有了討論的慾望。典型的例子如「叫」、「泉水廳」等,容易引起話題裂變的效果。
市場上現有的如果我們按類別看這些初創企業的名稱,它們的類別是什麼?
現在市場上的互聯 創業公司有數十萬家,我選擇其中的 5000 家進行研究。得出了一些現有的的創業公司的取名規律,分享給大家。
1、 傳統文化
對於普通的中國 民來說,傳統文化具有很高的認知度。通過與傳統文化相關的短語相結合,很容易記住和傳播公司名稱。
一。十二生肖
例子:
小貪心鼠,可愛鼠,鈦牛科技,長年牛,運動虎,笨虎科技,快兔,跑腿兔,龍眼,讀龍,火蛇翼,白龍馬,快馬,你駱駝,大猴,瘦猴快修,,秋楚雞,山寨狗,看門狗,生豬財務管理、養豬場、生豬財務
分析:
可見,黃道帶尤其容易以初創企業的名義取勝。每個十二生肖都有一定的個性屬性,猴子有精靈、柔韌等屬性,豬有淳樸的屬性,狗有安全等屬性。合理利用十二生肖的個性屬性加上行業特點,容易好名聲。
2。十二星座
例子:
白羊座音樂,金牛在線,雙子座娛樂,獅子座套裝,天秤座美容行業,天蠍座 絡,人馬座 絡,人馬座學院,摩羯座科技
分析:
就像黃道十二宮一樣,每個星座也有一定的個性屬性,比如金牛座的穩重、獅子座的、天秤座的公正等等,利用好星座的特點也很容易好名聲。
三。五行(金、木、水、火、土)
例子:
金達、金星家、金斧、金工、盧金鎖、木材市場、伐木堆積、積木箱、金融、水天峽、水花坨、料火、通火、土狐、土巴兔
四。暴風雨和雷聲
例子:
國外風,風之子,風暴鏡,拉風旅行,兩三場雨,打雷技術,春雨聽雷,春雨博士,電技術,電滑鼠,電紳士,電無憂
5個。東南西北
例子:
東壩區、東油集區、西施區、銷敏西邵業區、貴茂區
6。日月星辰
例子:
快樂的一天,美麗的一個月計劃,明星點評,美晨旅遊
7號。江河、湖泊和海洋
例子:
江小白、渭河、新湖資產、海螞蟻、海納
8個。古詩文
例子:
智虎、、榫卯
分析:
唐詩、宋詩、古典等都有大量的財富有待我們挖掘。當然,這種名字最難選,但一旦選對了詞,品牌的加分其實是巨大的。對於初創企業,可以優先考慮是否能有這樣一個合適的名字。
2、 日常用語
在所有的命名規則中,我個人喜歡這種將日常用語翻譯成公司名稱的巧妙例子。這些詞彙與公司主營業務關聯度很高,很容易進入消費者的認知,巨大的眼球效應。
例子:
去哪兒,喜馬拉雅山,歌廳,大街小巷,界面,小米,雪球,周末去哪兒,餓了,向誰學習,珠八街,遂壽,拉戈,暴力卡通,水墨天氣,出發點,保鮮期,今日,餐飲,老四,學步軍,乞丐,速溶,開心
分析:
例如,如果是為了理財,不妨稱之為「放心理財」;如果是為了社交應用,不妨稱之為「」。當然,該產品可能無法在市場上銷售。
3、 行業特色詞類
每個行業都會有一些關鍵詞需要傳達給用戶。對於新鮮的電子商務來說,可能是「新鮮」和「快速」;對於金融來說,可能是「利潤」、「好」、「簡單」等,初步來看,可以概括為:「懶惰、開心、發現美,而賢儀說你是一個好家庭。你有很多盟友。幫簡翻起書來照看。這對管家有好處。」
1,快
例子:
桂甫,快法,快分期,快健康
分析:
在金融、、圖片等行業,如果需要強調某一部分相對較快,則更適合選擇「快」字作為關鍵詞之一。
2、懶惰
例子:
懶惰的人聽書,懶惰的保險,懶惰的,懶惰的投資,懶惰的熊運動
分析:
懶惰對應著簡單、和容易的印象,因此它可以用於金融、閱讀和其他行業
3,微型
例子:
微信、微博、微博銀行、微博、微信、微信插座、微信醫葯
4,愛
例子:
愛奇藝,愛互動,愛健康,愛出國
5、音樂
例子:
樂柳樂冪蔬菜音樂舞台音樂
6,尋找
例子:
尋找鋼 ,塑料,醫生,保姆,簡歷,同事,諸葛,蘿卜,獵頭,室友,記者,公交車和商務
7、美國
例子:
美家浜、美菜 、美團、美力金融、美拍、美家 、美道、美家 、美拉
8,新鮮
例子:
每日優質新鮮,新鮮伴侶,新鮮老虎,海鮮
9,簡單
例子:
易車,易取,易果,鮮, 易
10.
例子:
會說禮物,會說美女,會說飛碟,會說每個人,會說流利的英語,會說美食,會說媽媽
11,太好了
例子:
、優心派、優步、優科、優品 、優生
12,派系
例子:
菠蘿派,動作派,冒險派,快樂派,香蕉派,旅行派
13.
例子:
米,計劃,切
14,利息
例子:
有趣的部分,有趣的旅行,有趣的運動,有趣的桌子
15,寶
例子:
余額寶、、出國寶、通二寶、月租寶、日之寶、社區寶
16,小
例子:
小米,小占教育,小蘋果,小,小紅樹,小發現,遇見小面,小交易
17.
例子:
大眾點評,大疆無人機,大志馬,大眼游,大地主,大菠蘿,大胖子,大漁 ,大智慧
18歲,很好。
例子:
好房子中國,好醫生在線,好項目,好工人,好人才
19,精神
例子:
買單人,分期,小吃,豌豆人,接線員,口語人,電車人
20,
例子:
友誼,綜合藝術,九個
21,更多
例子:
米多財富,多,閱讀,豪 ,大米和裝飾
22,救命
例子:
阿姨幫,汽車幫,媽媽幫,禮物幫,數據幫
23,簡
例子:
簡易賬本、財務管理、借款報銷
24歲。挖掘
例子:
挖掘財富、美麗地圖和葡萄酒
25,追求
例子:
追書法,追光動畫,快追
26,看
例子:
看醫生,看 ,今晚看什麼
27,寶
例子:
駕駛考試、筆試、汽車學習和
28,利潤
例子:
惠及 絡,惠及每一個人
29,家
例子:
家常菜、、汽車、交易者、園、夢園、歡樂園、 球
30,管家
例子:
飛行乘務員,一米乘務員,餐具乘務員
四、數字 + 字母 +顏色
1,字母
例子:
YY/,JJ,KK唱歌,個人桌面,PP租車,Q房 ,ofo共享單車,老闆直接僱傭,u店主
分析:
除非你有強大的資本支持,否則不建議個人使用這些名字。
2、數字+文字
例子:
58家庭,51信 ,16wifi,51talk,36氪,榮360,奇虎360
分析:
個人不推薦這樣的名字。
3、英語
分析:
適合一些垂直的人,如極客圈、程序員圈等。
4,數字
例子:
一張作業 ,一張裝飾 ,一張,一米,一個麻袋,一個課時,一張,一分,一個座位,一米新鮮,兩個師兄,兩個,三隻松鼠,三隻狐狸,第四維,第道,第五元素,五滴水,六米相聲,第六大道,第門,七頭牛,七幅手繪,七厘米,第七大道,簡七理財,七克拉,七公里,七號車間,八寶 ,八茂,洪濤9號,師兄9號,九和體育,九力大數據,九級,金十數據,十年後,十年金融,十點閱讀,十秒旅行
5。英語直譯
例子:
親愛的,莫比克,特斯拉,家人
分析:
如果目標用戶組是young fashion group,則可以考慮這種命名。
6、顏色
例子:
黃太極,黃曉初,紅馬甲,紅孩子,綠骨頭,橙醫生,綠西紅柿,藍先生,藍鉛筆,紫牛作坊,白天使,白羽毛,黑執事,黑男孩,灰金投資
五、水果 + 動物 + 植物
1、水果
例子:
蘋果、橘子、芒果電視、橘子空間、橘子金裝、橘子眾籌、香蕉節目、藍桃、香蕉巴士、香蕉社保、葡萄風險投資、游戲葡萄、梨、it橘子
2。動物
例子:
微鯨科技、三隻松鼠、螞蟻金裝、愛鮮蜂、蜜蜂數據、打魚電視、電視、虎撲、菜鳥 、加班狗、酷狗、模仿貓、藝術狗、飛豬、貓眼、天貓、編程貓、導購貓、社區貓、基因貓、藝術貓、貓、黑鳥自行車、太和鳥、閑魚,獨立魚、麻窩、猿題庫、沁牛猿碼頭、功夫熊、懶熊運動、考拉 、熊管家、豬短租、豬巴士、小馬購車、土巴兔、你駱駝、海狸家族、考拉FM、蜻蜓FM、企鵝吃喝指南、索溝、搜狐、飛狐
分析:
家族最喜歡採用動物來進行命名,比如螞蟻、飛豬、天貓、閑魚等等。動物本身具有人格特徵,如果項目本身具有相似的特徵的話,會起到 1+1>2 的作用。
三。植物
例子:
豆瓣、豆莢、保安蘿卜、杏林、杏仁醫生、瓜子二手車、蘿卜賬單、蘿卜、洋蔥圈、洋蔥旅遊、土豆、蘑菇街、蘑菇租賃、海豚瀏覽器、dougo.com、荔枝FM
6、 其他類別:重復物理同音演變創始人姓名組合物理簡化
1、重疊
例子:
Momo,探險,擁抱,每天果園,樂樂班,燈光,邦邦安全,配送,滴行,汽車維修,經典汽車維修,美圖秀秀,出門問問,楚楚街,碧麗碧麗,人人 ,北碚 ,人人貸,人人車,賣,品多多,方多多
分析:
重疊詞往往能突出某一個關鍵詞,如「擁抱」、「防多朵」等,起到增強印象的作用。
2。物理
例子:
誇克金融,引力波,激光推
分析:
更適合高科技公司。
三。同音演變
例子:
寶 (真愛 )、鏈家(愛家)、阿姨(阿姨)、快雅(快雅)、唯品會(VIP)
四。創始人姓名組合
例子:
京東(劉強東 + 龔小京)
分析:
不推薦。當然,如果你以後不擔心後悔,你可以選擇。
5,實物
例子:
海洋碼頭,錘子技術,麵包旅行,墨水文件,方公寓
6、簡化(A+B)
例子:
魅族、張月、獵聘、英可、昆侖覺、婚戒(結婚紀念日)、易籌(易籌)、印象筆記、古東體育、房長、口袋購物
如果我現在需要開始考慮創業公司的名字,我該怎麼辦?
首先,確定項目的領域。
金融或電子商務。更好列出子欄位。如果是電子商務,那就是新鮮的電子商務或跨境電子商務。
其次,明確項目特點。
是「快」還是「簡單」;是「優秀」還是「漂亮」等等。
然後,列出與項目相關的需求聲明。
最後,根據列出的所有信息,列出所合要求的名稱,並選擇合適的名稱。
例如,該項目是「電子商務」領域的「跨境電子商務」分類。該項目的特點可能是一系列的關鍵詞,如「道」、「美」、「惠」、「悅」、「陽」、「游」。項目背後的相關需求詞可以是「女人是男人看不懂的書」、「給你帶來高品質的海外產品」等,因此,我們可以得到「優淘」、「樂淘淘」、「匯購」等名字。
以上就是與屬鼠開公司取名字大全相關內容,是關於電子商務的分享。看完屬鼠的人公司名字大全後,希望這對大家有所幫助!
『叄』 如何使用OpenStack,Docker和Spark打造一個雲服務
蘑菇街基於 OpenStack 和 Docker 的私有雲實踐
本次主要想分享一下過去一年時間里,我們在建設基於Docker的私有雲實踐過程中,曾經遇到過的問題,如何解決的經驗,還有我們的體會和思考,與大家共勉。
在生產環境中使用Docker有一些經歷和經驗。私有雲項目是2014年聖誕節期間上線的,從無到有,經過了半年多的發展,經歷了3次大促,已經逐漸形成了一定的規模。
架構
集群管理
大家知道,Docker自身的集群管理能力在當時條件下還很不成熟,因此我們沒有選擇剛出現的 Swarm,而是用了業界最成熟的OpenStack,這樣能同時管理Docker和KVM。我們把Docker當成虛擬機來跑,是為了能滿足業務上對虛擬化的需求。今後的思路是微服務化,把應用進行拆分,變成一個個微服務,實現PaaS基於應用的部署和發布。
通過OpenStack如何管理Docker?我們採用的是OpenStack+nova-docker+Docker的架構模式。nova- docker是StackForge上一個開源項目,它做為nova的一個插件,通過調用Docker的RESTful介面來控制容器的啟停等動作。
我們在IaaS基礎上自研了編排調度等組件,支持應用的彈性伸縮、灰度升級等功能,並支持一定的調度策略,從而實現了PaaS層的主要功能。
同時,基於Docker和Jenkins實現了持續集成(CI)。Git中的項目如果發生了git push等動作,便會觸發Jenkins Job進行自動構建,如果構建成功便會生成Docker Image並push到鏡像倉庫。基於CI生成的Docker Image,可以通過PaaS的API或界面,進行開發測試環境的實例更新,並最終進行生產環境的實例更新,從而實現持續集成和持續交付。
網路和存儲
網路方面,我們沒有採用Docker默認提供的NAT網路模式,NAT會造成一定的性能損失。通過OpenStack,我們支持Linux bridge和Open vSwitch,不需要啟動iptables,Docker的性能接近物理機的95%。
容器的監控
監控方面,我們自研了container tools,實現了容器load值的計算,替換了原有的top、free、iostat、uptime等命令。這樣業務方在容器內使用常用命令時看到的是容器的值,而不是整個物理機的。目前我們正在移植Lxcfs到我們的平台上。
我們還在宿主機上增加了多個閾值監控和報警,比如關鍵進程監控、日誌監控、實時pid數量、網路連接跟蹤數、容器oom報警等等。
冗災和隔離性
冗災和隔離性方面,我們做了大量的冗災預案和技術准備。我們能夠在不啟動docker daemon的情況下,離線恢復Docker中的數據。同時,我們支持Docker的跨物理機冷遷移,支持動態的CPU擴容/縮容,網路IO磁碟IO的限速。
遇到的問題及解決方法
接近一年不到的產品化和實際使用中我們遇到過各種的問題,使用Docker的過程也是不斷優化Docker、不斷定位問題、解決問題的過程。
我們現在的生產環境用的是CentOS 6.5。曾經有個業務方誤以為他用的Docker容器是物理機,在Docker容器裡面又裝了一個Docker,瞬間導致內核crash,影響了同一台物理機的其他Docker容器。
經過事後分析是2.6.32-431版本的內核對network namespace支持不好引起的,在Docker內創建bridge會導致內核crash。upstream修復了這個bug,從2.6.32-431升級到2.6.32-504後問題解決。
還有一個用戶寫的程序有bug,創建的線程沒有及時回收,容器中產生了大量的線程,最後在宿主機上都無法執行命令或者ssh登陸,報的錯是"bash: fork: Cannot allocate memory",但通過free看空閑的內存卻是足夠的。
經過分析,發現是內核對pid的隔離性支持不完善,pid_max(/proc/sys/kernel/pid_max)是全局共享的。當一個容器中的pid數目達到上限32768,會導致宿主機和其他容器無法創建新的進程。最新的4.3-rc1才支持對每個容器進行pid_max限制。
我們還觀察到docker的宿主機內核日誌中會產生亂序的問題。經過分析後發現是由於內核中只有一個log_buf緩沖區,所有printk列印的日誌先放到這個緩沖區中,docker host以及container上的rsyslogd都會通過syslog從kernel的log_buf緩沖區中取日誌,導致日誌混亂。通過修改 container里的rsyslog配置,只讓宿主機去讀kernel日誌,就能解決這個問題。
除此之外,我們還解決了device mapper的dm-thin discard導致內核crash等問題。
體會和思考
最後分享一下我們的體會和思考,相比KVM比較成熟的虛擬化技術,容器目前還有很多不完善的地方,除了集群管理、網路和存儲,最重要的還是穩定性。影響穩定性的主要還是隔離性的不完善造成的,一個容器內引起的問題可能會影響整個系統。
容器的memcg無法回收slab cache,也不對dirty cache量進行限制,更容易發生OOM問題。還有,procfs上的一些文件介面還無法做到per-container,比如pid_max。
另外一點是對容器下的運維手段和運維經驗的沖擊。有些系統維護工具,比如ss,free,df等在容器中無法使用了,或者使用的結果跟物理機不一致,因為系統維護工具一般都會訪問procfs下的文件,而這些工具或是需要改造,或是需要進行適配。
雖然容器還不完善,但是我們還是十分堅定的看好容器未來的發展。Kubernetes、Mesos、Hyper、CRIU、runC等容器相關的開源軟體,都是我們關注的重點。
Q&A
Q:請問容器間的負載均衡是如何做的?
A: 容器間的負載均衡,更多是PaaS和SaaS層面的。我們的P層支持4層和7層的動態路由,通過域名的方式,或者名字服務來暴露出對外的介面。我們能夠做到基於容器的灰度升級,和彈性伸縮。
Q:請問你們的OpenStack是運行在CentOS 6.5上的嗎?
A: 是的,但是我們針對OpenStack和Docker依賴的包進行了升級。我們維護了內部的yum源。
Q:請問容器IP是靜態編排還是動態獲取的?
A: 這個跟運維所管理的網路模式有關,我們內部的網路沒有DHCP服務,因此對於IaaS層,容器的IP是靜態分配的。對於PaaS層來說,如果有DHCP服務,容器的App所暴露出來IP和埠就可以做到動態的。
Q:請問你們當時部署的時候有沒有嘗試過用Ubuntu,有沒有研究過兩個系統間的區別,另外請問你們在OpenStack上是怎樣對這些虛擬機監控的?
A: 我們沒有嘗試過Ubuntu,因為公司生產環境上用的是CentOS。我們的中間件團隊負責公司機器的監控,我們和監控團隊配合,將監控的agent程序部署到宿主機和每個容器里,這樣就可以當成虛擬機來進行監控。
當然,容器的數據是需要從cgroups里來取,這部分提取數據的工作,是我們來實現的。
Q:容器間的網路選型有什麼建議,據說採用虛擬網卡比物理網卡有不小的性能損失,Docker自帶的weaves和ovs能勝任嗎?
A: 容器的網路不建議用默認的NAT方式,因為NAT會造成一定的性能損失。之前我的分享中提到過,不需要啟動iptables,Docker的性能接近物理機的95%。Docker的weaves底層應該還是採用了網橋或者Open vSwitch。建議可以看一下nova-docker的源碼,這樣會比較容易理解。
Q:靜態IP通過LXC實現的嗎?
A: 靜態IP的實現是在nova-docker的novadocker/virt/docker/vifs.py中實現的。實現的原理就是通過ip命令添加 veth pair,然後用ip link set/ip netns exec等一系列命令來實現的,設置的原理和weaves類似。
Q:容器內的進程gdb你們怎麼弄的,把gdb打包到容器內嗎?
A: 容器內的gdb不會有問題的,可以直接yum install gdb。
Q:共享存儲能直接mount到容器里嗎?
A: 雖然沒試過,但這個通過docker -v的方式應該沒什麼問題。
Q:不啟動Docker Daemon的情況下,離線恢復Docker中的數據是咋做到的?
A: 離線恢復的原理是用dmsetup create命令創建一個臨時的dm設備,映射到Docker實例所用的dm設備號,通過mount這個臨時設備,就可以恢復出原來的數據。
Q:Docker的跨物理機冷遷移,支持動態的CPU擴容/縮容,網路IO磁碟IO的限速,是怎麼實現的,能具體說說嗎?
A:Docker的冷遷移是通過修改nova-docker,來實現OpenStack遷移的介面,具體來說,就是在兩台物理機間通過docker commit,docker push到內部的registry,然後docker pull snapshot來完成的。
動態的CPU擴容/縮容,網路IO磁碟IO的限速主要是通過novadocker來修改cgroups中的cpuset、iops、bps還有TC的參數來實現的。
Q:請問你們未來會不會考慮使用Magnum項目,還是會選擇Swarm?
A:這些都是我們備選的方案,可能會考慮Swarm。因為Magnum底層還是調用了Kubernetes這樣的集群管理方案,與其用Magnum,不如直接選擇Swarm或者是Kubernetes。當然,這只是我個人的看法。
Q:你們的業務是基於同一個鏡像么,如果是不同的鏡像,那麼計算節點如何保證容器能夠快速啟動?
A:運維會維護一套統一的基礎鏡像。其他業務的鏡像會基於這個鏡像來製作。我們在初始化計算節點的時候就會通過docker pull把基礎鏡像拉到本地,這也是很多公司通用的做法,據我了解,騰訊、360都是類似的做法。
Q:做熱遷移,有沒有考慮繼續使用傳統共享存儲的來做?
A: 分布式存儲和共享存儲都在考慮范圍內,我們下一步,就計劃做容器的熱遷移。
Q:請問你們是直接將公網IP綁定到容器嗎,還是通過其他方式映射到容器的私有IP,如果是映射如何解決原本二層的VLAN隔離?
A:因為我們是私有雲,不涉及floating ip的問題,所以你可以認為是公網IP。VLAN的二層隔離完全可以在交換機上作。我們用Open vSwitch劃分不同的VLAN,就實現了Docker容器和物理機的網路隔離。
Q:Device mapper dm-thin discard問題能說的詳細些嗎?
A:4月份的時候,有兩台宿主機經常無故重啟。首先想到的是查看/var/log/messages日誌,但是在重啟時間點附近沒有找到與重啟相關的信息。而後在/var/crash目錄下,找到了內核crash的日誌vmcore-dmesg.txt。日誌的生成時間與宿主機重啟時間一致,可以說明宿主機是發生了kernel crash然後導致的自動重啟。「kernel BUG at drivers/md/persistent-data/dm-btree-remove.c:181!」。 從堆棧可以看出在做dm-thin的discard操作(process prepared discard),雖然不知道引起bug的根本原因,但是直接原因是discard操作引發的,可以關閉discard support來規避。
我們將所有的宿主機配置都禁用discard功能後,再沒有出現過同樣的問題。
在今年CNUTCon的大會上,騰訊和大眾點評在分享他們使用Docker的時候也提到了這個crash,他們的解決方法和我們完全一樣。
Q:閾值監控和告警那塊,有高中低多種級別的告警嗎,如果當前出現低級告警,是否會採取一些限制用戶接入或者砍掉當前用戶正在使用的業務,還是任由事態發展?
A:告警這塊,運維有專門的PE負責線上業務的穩定性。當出現告警時,業務方和PE會同時收到告警信息。如果是影響單個虛擬機的,PE會告知業務方,如果嚴重的,甚至可以及時下掉業務。我們會和PE合作,讓業務方及時將業務遷移走。
Q:你們自研的container tools有沒有開源,GitHub上有沒有你們的代碼,如何還沒開源,後期有望開源嗎,關於監控容器的細粒度,你們是如何考慮的?
A:雖然我們目前還沒有開源,單我覺得開源出來的是完全沒問題的,請大家等我們的好消息。關於監控容器的細粒度,主要想法是在宿主機層面來監控容器的健康狀態,而容器內部的監控,是由業務方來做的。
Q:請問容器的layer有關心過層數么,底層的文件系統是ext4么,有優化策略么?
A:當然有關心,我們通過合並鏡像層次來優化docker pull鏡像的時間。在docker pull時,每一層校驗的耗時很長,通過減小層數,不僅大小變小,docker pull時間也大幅縮短。
Q:容器的memcg無法回收slab cache,也不對dirty cache量進行限制,更容易發生OOM問題。----這個緩存問題你們是怎麼處理的?
A:我們根據實際的經驗值,把一部分的cache當做used內存來計算,盡量逼近真實的使用值。另外針對容器,內存報警閾值適當調低。同時添加容器OOM的告警。如果升級到CentOS 7,還可以配置kmem.limit_in_bytes來做一定的限制。
Q:能詳細介紹下你們容器網路的隔離?
A:訪問隔離,目前二層隔離我們主要用VLAN,後面也會考慮VXLAN做隔離。 網路流控,我們是就是使用OVS自帶的基於port的QoS,底層用的還是TC,後面還會考慮基於flow的流控。
Q:請問你們這一套都是用的CentOS 6.5嗎,這樣技術的實現。是運維還是開發參與的多?
A:生產環境上穩定性是第一位的。CentOS 6.5主要是運維負責全公司的統一維護。我們會給運維在大版本升級時提建議。同時做好虛擬化本身的穩定性工作。
Q:請問容器和容器直接是怎麼通信的?網路怎麼設置?
A:你是指同一台物理機上的嗎?我們目前還是通過IP方式來進行通信。具體的網路可以採用網橋模式,或者VLAN模式。我們用Open vSwitch支持VLAN模式,可以做到容器間的隔離或者通信。
Q:你們是使用nova-api的方式集成Dcoker嗎,Docker的高級特性是否可以使用,如docker-api,另外為什麼不使用Heat集成Docker?
A:我們是用nova-docker這個開源軟體實現的,nova-docker是StackForge上一個開源項目,它做為nova的一個插件,替換了已有的libvirt,通過調用Docker的RESTful介面來控制容器的啟停等動作。
使用Heat還是NOVA來集成Docker業界確實一直存在爭議的,我們更多的是考慮我們自身想解決的問題。Heat本身依賴的關系較為復雜,其實業界用的也並不多,否則社區就不會推出Magnum了。
Q:目前你們有沒有容器跨DC的實踐或類似的方向?
A:我們已經在多個機房部署了多套集群,每個機房有一套獨立的集群,在此之上,我們開發了自己的管理平台,能夠實現對多集群的統一管理。同時,我們搭建了Docker Registry V1,內部准備升級到Docker Registry V2,能夠實現Docker鏡像的跨DC mirror功能。
Q:我現在也在推進Docker的持續集成與集群管理,但發現容器多了管理也是個問題,比如容器的彈性管理與資源監控,Kubernetes、Mesos哪個比較好一些,如果用在業務上,那對外的域名解析如何做呢,因為都是通過宿主機來通信,而它只有一個對外IP?
A: 對於Kubernetes和Mesos我們還在預研階段,我們目前的P層調度是自研的,我們是通過etcd來維護實例的狀態,埠等信息。對於7層的可以通過Nginx來解析,對於4層,需要依賴於naming服務。我們內部有自研的naming服務,因此我們可以解決這些問題。對外雖然只有一個IP,但是暴露的埠是不同的。
Q:你們有考慮使用Hyper Hypernetes嗎? 實現容器與宿主機內核隔離同時保證啟動速度?
A:Hyper我們一直在關注,Hyper是個很不錯的想法,未來也不排除會使用Hyper。其實我們最希望Hyper實現的是熱遷移,這是目前Docker還做不到的。
Q:你們宿主機一般用的什麼配置?獨立主機還是雲伺服器?
A:我們有自己的機房,用的是獨立的伺服器,物理機。
Q:容器跨host通信使用哪一種解決方案?
A: 容器跨host就必須使用3層來通信,也就是IP,容器可以有獨立的IP,或者宿主機IP+埠映射的方式來實現。我們目前用的比較多的還是獨立ip的方式,易於管理。
Q:感覺貴公司對Docker的使用比較像虛擬機,為什麼不直接考慮從容器的角度來使用,是歷史原因么?
A:我們首先考慮的是用戶的接受程度和改造的成本。從用戶的角度來說,他並不關心業務是跑在容器里,還是虛擬機里,他更關心的是應用的部署效率,對應用本身的穩定性和性能的影響。從容器的角度,一些業務方已有的應用可能需要比較大的改造。比如日誌系統,全鏈路監控等等。當然,最主要的是對已有運維系統的沖擊會比較大。容器的管理對運維來說是個挑戰,運維的接受是需要一個過程的。
當然,把Docker當成容器來封裝應用,來實現PaaS的部署和動態調度,這是我們的目標,事實上我們也在往這個方向努力。這個也需要業務方把應用進行拆分,實現微服務化,這個需要一個過程。
Q:其實我們也想用容器當虛擬機使用。你們用虛擬機跑什麼中間件?我們想解決測試關鍵對大量相對獨立環境WebLogic的矛盾?
A:我們跑的業務有很多,從前台的主站Web,到後端的中間件服務。我們的中間件服務是另外團隊自研的產品,實現前後台業務邏輯的分離。
Q:貴公司用OpenStack同時管理Docker和KVM是否有自己開發Web配置界面,還是單純用API管理?
A:我們有自研的Web管理平台,我們希望通過一個平台管理多個集群,並且對接運維、日誌、監控等系統,對外暴露統一的API介面。
Q:上面分享的一個案例中,關於2.6內核namespace的bug,這個低版本的內核可以安裝Docker環境嗎,Docker目前對procfs的隔離還不完善,你們開發的container tools是基於應用層的還是需要修改內核?
A:安裝和使用應該沒問題,但如果上生產環境,是需要全面的考慮的,主要還是穩定性和隔離性不夠,低版本的內核更容易造成系統 crash或者各種嚴重的問題,有些其實不是bug,而是功能不完善,比如容器內創建網橋會導致crash,就是network namespace內核支持不完善引起的。
我們開發的container tools是基於應用的,不需要修改內核。
Q:關於冗災方面有沒有更詳細的介紹,比如離線狀態如何實現數據恢復的?
A:離線狀態如何實現恢復數據,這個我在之前已經回答過了,具體來說,是用dmsetup create命令創建一個臨時的dm設備,映射到docker實例所用的dm設備號,通過mount這個臨時設備,就可以恢復出原來的數據。其他的冗災方案,因為內容比較多,可以再另外組織一次分享了。你可以關注一下http://mogu.io/,到時候我們會分享出來。
Q:貴公司目前線上容器化的系統,無狀態為主還是有狀態為主,在場景選擇上有什麼考慮或難點?
A:互聯網公司的應用主要是以無狀態的為主。有狀態的業務其實從業務層面也可以改造成部分有狀態,或者完全不狀態的應用。不太明白你說的場景選擇,但我們盡量滿足業務方的各種需求。
對於一些本身對穩定性要求很高,或對時延IO特別敏感,比如redis業務,無法做到完全隔離或者無狀態的,我們不建議他們用容器。
多進程好還是多線程好等等,並不是說因為Spark很火就一定要使用它。在遇到這些問題的時候、圖計算,目前我們還在繼續這方面的工作:作為當前流行的大數據處理技術? 陳,它能快速創建一個Spark集群供大家使用,我們使用OpenStack? 陳。 問,Hadoop軟硬體協同優化,在OpenPOWER架構的伺服器上做Spark的性能分析與優化:您在本次演講中將分享哪些話題。 問。多參與Spark社區的討論。曾在《程序員》雜志分享過多篇分布式計算、Docker和Spark打造SuperVessel大數據公有雲」,給upstrEAM貢獻代碼都是很好的切入方式、SQL,並擁有八項大數據領域的技術專利,MapRece性能分析與調優工具。例如還有很多公司在用Impala做數據分析:企業想要擁抱Spark技術,對Swift對象存儲的性能優化等等。例如與Docker Container更好的集成,大數據雲方向的技術負責人,Spark還是有很多工作可以做的?企業如果想快速應用Spark 應該如何去做,具體的技術選型應該根據自己的業務場景,Docker Container因為在提升雲的資源利用率和生產效率方面的優勢而備受矚目,高性能FPGA加速器在大數據平台上應用等項目,再去調整相關的參數去優化這些性能瓶頸,一些公司在用Storm和Samaza做流計算: 相比於MapRece在性能上得到了很大提升?
『肆』 請問兩年半的java程序員面試會遇到哪些問題
J2SE基礎:
1. 九種基本數據類型的大小,以及他們的封裝類。
2. Switch能否用string做參數?
3. equals與==的區別。
4. Object有哪些公用方法?
5. Java的四種引用,強弱軟虛,用到的場景。
6. Hashcode的作用。
7. ArrayList、LinkedList、Vector的區別。
8. String、StringBuffer與StringBuilder的區別。
9. Map、Set、List、Queue、Stack的特點與用法。
10. HashMap和HashTable的區別。
11. HashMap和ConcurrentHashMap的區別,HashMap的底層源碼。
12. TreeMap、HashMap、LindedHashMap的區別。
13. Collection包結構,與Collections的區別。
14. try catch finally,try里有return,finally還執行么?
15. Excption與Error包結構。OOM你遇到過哪些情況,SOF你遇到過哪些情況。
16. Java面向對象的三個特徵與含義。
17. Override和Overload的含義去區別。
18. Interface與abstract類的區別。
19. Static class 與non static class的區別。
20. java多態的實現原理。
21. 實現多線程的兩種方法:Thread與Runable。
22. 線程同步的方法:sychronized、lock、reentrantLock等。
23. 鎖的等級:方法鎖、對象鎖、類鎖。
24. 寫出生產者消費者模式。
25. ThreadLocal的設計理念與作用。
26. ThreadPool用法與優勢。
27. Concurrent包里的其他東西:ArrayBlockingQueue、CountDownLatch等等。
28. wait()和sleep()的區別。
29. foreach與正常for循環效率對比。
30. Java IO與NIO。
31. 反射的作用於原理。
32. 泛型常用特點,List<String>能否轉為List<Object>。
33. 解析XML的幾種方式的原理與特點:DOM、SAX、PULL。
34. Java與C++對比。
35. Java1.7與1.8新特性。
36. 設計模式:單例、工廠、適配器、責任鏈、觀察者等等。
37. JNI的使用。
JVM:
1. 內存模型以及分區,需要詳細到每個區放什麼。
2. 堆裡面的分區:Eden,survival from to,老年代,各自的特點。
3. 對象創建方法,對象的內存分配,對象的訪問定位。
4. GC的兩種判定方法:引用計數與引用鏈。
5. GC的三種收集方法:標記清除、標記整理、復制演算法的原理與特點,分別用在什麼地方,如果讓你優化收集方法,有什麼思路?
6. GC收集器有哪些?CMS收集器與G1收集器的特點。
7. Minor GC與Full GC分別在什麼時候發生?
8. 幾種常用的內存調試工具:jmap、jstack、jconsole。
9. 類載入的五個過程:載入、驗證、准備、解析、初始化。
10. 雙親委派模型:Bootstrap ClassLoader、Extension ClassLoader、ApplicationClassLoader。
11. 分派:靜態分派與動態分派。
(來源:面試心得與總結---BAT、網易、蘑菇街)
總體來說java考察內容包括以下這些:
1,面向對象的一些基本概念:繼承,多態之類的
2, 抽象類和介面
3, 靜態類,內部類
4, Java集合類,同步和非同步
5, Java類載入機制
6, Java內存模型和垃圾回收演算法
7, 線程同步機制(voliate,synchronized,重入鎖,threadlocal),線程間通信(wait,notify)
8, 異常處理
9, 多線程同步問題,生產者消費者,讀者寫者,哲學家就餐,用java實現
10, 了解java中設計模式的思想,用了哪些設計模式,有什麼好處
作者:Doing
鏈接:https://www.hu.com/question/29800631/answer/109486025
來源:知乎