What an engineer can take away from Velocity 2016
2016-06-26 06:09
525 查看
Velocity is a DevOps Conference that happens every year in several cities around the world which brings world's DevOps engineers together to talk about Web Performance
and cutting edge Ops tech such as containers, configuration management, development automation and so on.
For sure this year, More attentions were paid to micro services and docker. Here are some highlights that we can take from the conference. Check the flesh out if you are interested.
their power now.
As said, A site or app will lose a visitor if it can't respond in 3 seconds, An app that without time efficiency
and better user experience is just a piece of shit no matter how excellent its server is. Google introducedService Workers for buildingProgressice Web App(PWA). Service
workersallows you to support offline experiences, giving developers complete control over what exactly
that experience is. You can simply take it as a front end proxy. Check out google references
here.
Facebook also spent much effort on speeding up their apps, In their speech given in the conference, they mentioned their design system for speeding up a site, likePagelets,
but acutally, you can just checkout BigPipe.The
general idea of BigPipe is to decompose web pages into small chunks called pagelets, and pipeline them through several execution stages inside web servers and browsers.
Another fun topic isServeless App using lambda,I
don't like this one as the two above, I'd say this is more a play toy for developers and it may useful to build some internal tools to boost up development efficiency, may different to stand in the product environment. just my opinion. don't take it seriously.
The two techniques share some ideas as the same, like redefining the way we design the site. I am pretty sure this will become the trends of future front end development.
Besides the two new things, Dustin Whittle talked much about more general ideas for front end development, event we have more and more new techs and tools for optimizing an app,
but at least for now, almost evey app, we need to care about CSS, JS, so keep using tools likegulp, grunt, bower
and yeoman to help you manage front ent burdens and minimize
them. Checkout his slideshere.
After an app completed, you'd like to know
how it performs, here is some useful tools to checkout:sitespeed.io,psi and webpagetest.com
how docker is catching up in the tech world.
There are many companies did so good in migrating current architecture to docker,Etsy
is the one I want to note as they shared theire experience in the conference. New Relic is another app performance analysis platform which use docker to host all their services too(https://blog.newrelic.com/2015/06/18/zero-to-docker/).
If you have some experiences with docker, you should know how difficult it is to locate a problem in docker,
you can have log files in docker machine, but if the system grows, you may want something like splunk, ELK to do specific docker debug. Sysdig is the first tool I got to know in the conference that can help you to debug micro services efficiently. Although
this is still not a highly recommended and widely used tool, stil good to know more efforts went there.Docker security is a known problem, this is another
field that many companies and engineers will research.
or AppNeta (just name a few) to monitor our apps. but is that enough?
To have a deep insight into your app, you should definitely do RUM(real user monitoring) to give us the result. LinkedIn talked about theire tool Luminol to do Anomaly detection,
this is more about data scicene, and it's an adaptive learning process. Good to know.
build for change, as system is always changing.
Build a resillient system is not stack up any ideas just in your head, please measure it, test it and refactor if required.
Build a resillient system is not rely on a genious developer, so communicate, communicate and communicate across teams. Learn from security team, learn from Ops team, learn from
your user.
and cutting edge Ops tech such as containers, configuration management, development automation and so on.
For sure this year, More attentions were paid to micro services and docker. Here are some highlights that we can take from the conference. Check the flesh out if you are interested.
1. Front end:
On the fron end side, there are some amazing things from Google and Facebook. Actually, I believe they are out there for a long time, but maybe it's good to unleashtheir power now.
As said, A site or app will lose a visitor if it can't respond in 3 seconds, An app that without time efficiency
and better user experience is just a piece of shit no matter how excellent its server is. Google introducedService Workers for buildingProgressice Web App(PWA). Service
workersallows you to support offline experiences, giving developers complete control over what exactly
that experience is. You can simply take it as a front end proxy. Check out google references
here.
Facebook also spent much effort on speeding up their apps, In their speech given in the conference, they mentioned their design system for speeding up a site, likePagelets,
but acutally, you can just checkout BigPipe.The
general idea of BigPipe is to decompose web pages into small chunks called pagelets, and pipeline them through several execution stages inside web servers and browsers.
Another fun topic isServeless App using lambda,I
don't like this one as the two above, I'd say this is more a play toy for developers and it may useful to build some internal tools to boost up development efficiency, may different to stand in the product environment. just my opinion. don't take it seriously.
The two techniques share some ideas as the same, like redefining the way we design the site. I am pretty sure this will become the trends of future front end development.
Besides the two new things, Dustin Whittle talked much about more general ideas for front end development, event we have more and more new techs and tools for optimizing an app,
but at least for now, almost evey app, we need to care about CSS, JS, so keep using tools likegulp, grunt, bower
and yeoman to help you manage front ent burdens and minimize
them. Checkout his slideshere.
After an app completed, you'd like to know
how it performs, here is some useful tools to checkout:sitespeed.io,psi and webpagetest.com
2 Docker and micro services
In the production user level, Docker is still new, but it's emerging. Look at the digaram below to seehow docker is catching up in the tech world.
There are many companies did so good in migrating current architecture to docker,Etsy
is the one I want to note as they shared theire experience in the conference. New Relic is another app performance analysis platform which use docker to host all their services too(https://blog.newrelic.com/2015/06/18/zero-to-docker/).
If you have some experiences with docker, you should know how difficult it is to locate a problem in docker,
you can have log files in docker machine, but if the system grows, you may want something like splunk, ELK to do specific docker debug. Sysdig is the first tool I got to know in the conference that can help you to debug micro services efficiently. Although
this is still not a highly recommended and widely used tool, stil good to know more efforts went there.Docker security is a known problem, this is another
field that many companies and engineers will research.
3 Performance Analysis
This is an area I know nothing about, for a not Ops developer, we only use DataDog, New Relic, AppDynamicsor AppNeta (just name a few) to monitor our apps. but is that enough?
To have a deep insight into your app, you should definitely do RUM(real user monitoring) to give us the result. LinkedIn talked about theire tool Luminol to do Anomaly detection,
this is more about data scicene, and it's an adaptive learning process. Good to know.
4 Other tips:
Build a resillient system is never easy. Every desinger should has their design philosoly. System shouldbuild for change, as system is always changing.
Build a resillient system is not stack up any ideas just in your head, please measure it, test it and refactor if required.
Build a resillient system is not rely on a genious developer, so communicate, communicate and communicate across teams. Learn from security team, learn from Ops team, learn from
your user.
相关文章推荐
- VMC部署管理:关于无缝升级
- 【DevOps】为什么我们永远疲于奔命?
- 选定虚拟主机 性能凸显优势
- 修改一行代码提升 Postgres 性能 100 倍
- redis的hGetAll函数的性能问题(记Redis那坑人的HGETALL)
- 推荐Sql server一些常见性能问题的解决方法
- SQL Server误区30日谈 第9天 数据库文件收缩不会影响性能
- 和表值函数连接引发的性能问题分析
- SQLServer 2000 升级到 SQLServer 2008 性能之需要注意的地方之一
- 数据库性能优化三:程序操作优化提升性能
- VBS中的字符串连接的性能问题
- mysql 性能的检查和调优方法
- 数据库性能优化二:数据库表优化提升性能
- SQL语句性能优化(续)
- SQL语句优化提高数据库性能
- 如何用分表存储来提高性能 推荐
- ASP中使用FileSystemObject时提高性能的方法
- 如何改进javascript代码的性能
- JavaScript脚本性能优化注意事项
- 使用Function.apply()的参数数组化来提高 JavaScript程序性能的技巧