Docker对DevOps的影响:一年间的变革

需积分: 0 1 下载量 168 浏览量 更新于2024-07-22 收藏 1.55MB PDF 举报
"Chris Swan的演讲‘A lot changed in a year’探讨了Docker在2014年的发展和对DevOps领域的影响。" 在这次演讲中,Chris Swan,当时的首席技术官,强调了Docker对于DevOps的重要性,因为它缩短了迭代周期。Docker的核心项目在短时间内快速发展,而其生态系统则以更快的速度前进。演讲者提到,通过Docker,很多团队得以实现高效的工作流程。 为何关注Docker?在DevOps的语境下,Docker扮演了关键角色,因为它与John Boyd的OODA(观察、定向、决策、行动)循环理念相吻合。OODA循环是军事策略,但在软件开发中,它代表了快速响应变化的能力。Docker通过提供可移植、隔离的运行环境,帮助团队迅速适应和测试新变化,从而加快了这一过程。 演讲回溯到Docker的早期版本,例如0.1.0(2013-03-23),那时候Docker已经开始使用LXC(Linux Containers)并依赖Registry来推送和拉取镜像。随着时间推移,到了0.6.6版本(2013-11-06),Docker在运行时的功能得到了显著增强,包括容器命名注册、修复了/etc/hosts的问题、增加了对写操作的锁定、检查端口有效性、处理重启时的网络错误等。这些改进显示了Docker在短短一年内如何快速演进和完善。 演讲还提到了一年前的Docker状态,那时Docker已经具备了预防DNS服务器冲突、设置环境变量使用文件、防止docker insert删除原有内容等功能,这些都是为了提高容器的稳定性和易用性。 Docker的快速发展和对DevOps流程的优化,使得它成为了云原生计算的重要组成部分。通过提供轻量级的容器化解决方案,Docker极大地推动了软件开发和部署的效率,降低了环境不一致的问题,并促进了持续集成和持续交付(CI/CD)的实践。
2023-06-08 上传

select lot_hs.lot_id as lot_id,lot_type,lot_hs.mainpd_id, created_time,COMPLETE_TIME, value(bank.banktime,0) as banktime , round ( ( 1.00*(days(COMPLETE_TIME)-days(created_time)) + (hour(COMPLETE_TIME)-hour(created_time))*1.00/24 + (minute(COMPLETE_TIME)-minute(created_time))*1.00/24/60 + (second(COMPLETE_TIME)-second(created_time))1.00/24/60/60) - value(bank.banktime,0),3) as use_days, customer_id, coalesce(cc.cust_id_define,lot_hs.customer_id) as cust_id2, cc.cycletime_target as ct_target, date,layer, round(count() over(partition by coalesce(cc.cust_id_define,lot_hs.customer_id),cc.cycletime_target)*0.9,0) cnt, row_number() over(partition by coalesce(cc.cust_id_define,lot_hs.customer_id),cc.cycletime_target order by ( ( days(COMPLETE_TIME)-days(created_time) + (hour(COMPLETE_TIME)-hour(created_time))*1.00/24 + (minute(COMPLETE_TIME)-minute(created_time))*1.00/24/60 + (second(COMPLETE_TIME)-second(created_time))*1.00/24/60/60) - value(bank.banktime,0))/layer) id From (select date(a.claim_time) as date, a.lot_id, a.lot_type,a.mainpd_id,a.prodspec_id,a.custprod_id, case when(date(b.created_time) <= '2009-01-05') then b.created_time + 21 days else b.created_time end as created_time, CASE WHEN A.CUST_id in ('MCA','NPA','SET') THEN a.COMPLETE_TIME ELSE a.COMPLETE_TIME END COMPLETE_TIME, a.cust_id as customer_id, a.ope_category, c.layer From f3rpt.F3_TB_DAILY_FABOUT a, f3rpt.fvlot b, (select mainpd_id, sum(masks)layer from f3rpt.ASMCRPT_VW_MAINPD_MASKS_ALL group by mainpd_id) as c, (select * from (select lot_id, max(claim_time)claim_time, count(case when(ope_category='Ship')then lot_id else null end) as LS, count(case when(ope_category='Unship') then lot_id else null end) as LUS from f3rpt.F3_TB_DAILY_FABOUT where substr(lot_id,1,2) not in('CA','CW','ES','E0','EM') and lot_type = 'Production' AND LOT_ID NOT LIKE 'H%' and substr(lot_id,7,4)='.00F' and ope_category in ('Ship','Unship') and year(claim_time) = year(current date - 1 days) and month(claim_time) = month(current date - 1 days) group by lot_id) as a where LS - LUS > 0 ) as lot Where a.lot_id = b.lot_id and b.mainpd_id = c.mainpd_id and a.lot_id = lot.LOT_ID and a.claim_time = lot.claim_time and a.ope_category = 'Ship' and a.cust_id in ('SM','BOE','GSC','NPA','GTA') ) as lot_hs left outer join (select lot_id,max(bankin_time) banktime from f3rpt.asmc_dpm where bankin_time>0 group by lot_id) bank on (lot_hs.lot_id = bank.lot_id) left join f3cim.f3cim_cfg_cust_rule cc on case when lot_hs.customer_id='WXM' THEN 'WII'||SUBSTR(lot_hs.mainpd_id,6,1) else lot_hs.customer_id end = cc.cust_id and locate(cc.mainpd_id,lot_hs.mainpd_id)>0 and locate(cc.prodspec_id,lot_hs.prodspec_id)>0 and locate(cc.custprod_id_45,substr(lot_hs.custprod_id,3,3))>0 where lot_hs.ope_category = 'Ship' ;以上sql如何优化

2023-06-07 上传