‘壹’ 一般程序员的工资是多少
程序员工资是不确定的,要根据程序员的历、能力、工作经验、是否刚毕业、工种,工资是不一样的,还与地域和公司有关,但是总的来说,程序员工资都是很高的,是很多人都羡慕的职位。
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
来源:知乎