Operation of the most hated 4 things: the development of students can help do something?
On Industry News
The word DevOps suggests that development and operations need to be co-operational. However, in real life, both sides will have different job responsibilities, and the view of the problem is not the same. In most cases, it is an unjust treatment on the operations side. In order to enable developers to better understand the operations of the students, but also to help solve some problems, this article shared some experience and views.
1. New development technologies are constantly emerging
In general, developers measure work through product capabilities, while system administrators and operations teams are measured by stability metrics, which tend to oppose these new technologies. Developing students using these new technologies can help them get a quick fix on a feature development, perhaps a new programming language, Scala, which has good scalability and better support for various components, or they prefer to use popular databases such as MongoDB, This non-relational database can help developers update their code faster and more flexibly.
Although these new technologies may bring many benefits to the development students. But it is undeniable that these new technologies may also bring many difficulties to the OPS students. Because a standard company product may consist of dozens of, hundreds of, or even thousands of technology stacks, they may be developed based on a variety of different technologies. For developers, however, they only need to focus on one technology (or a few). In most cases, each operation may need to monitor multiple or even dozens of applications at the same time. Without professional-grade monitoring software such as OneAPM, it is difficult to manage.
For developers, they only need to be proficient in a technology to make a great product. But for companies with multiple product lines, there may be scalability limitations or security issues. OPS students need to constantly learn new skills to avoid being stumped by various running bugs. If the initial developer of an application leaves the team Unfortunately, it is estimated that OPS is crazy. Of course, there are some situations, such as a lot of development students like to use some open source products, but their compatibility is often poor, which also brings a lot of trouble for the operation of students.
What help can developers provide?
In the development or the new product, the development of students should consult the operation of the students in advance, now which technology is most commonly used, but also to consider, in the near future, even in the face of complex production environment can successfully complete the development work, operation and maintenance students need to give "cautious" answer. Here's a good idea to stick with some standardized components as much as possible.
2. Have to deal with a lot of "legacy" code
Development students are relatively lucky because they usually don't have to deal with legacy code issues. Operations are not, the data center of many enterprises is like a "science and technology Museum". Even some of the old applications that are barely available, OPS still need to keep them running, because maybe it has some kind of "entangled" relationship with some key application.
What help can developers provide?
In fact, this problem is the first problem in essence, because over time, many enterprises have gradually lost their ability to control the technology level. And the solution is almost the same: Keep the technology stack simple and standardized, and take into account which members are needed for future maintenance.
3. Applications can run on the development environment, but cannot work on a production environment
Many development students often say similar to "we run very well in the development environment," and then put the problem directly to the operations of students. In this case, it is generally because the developer has not done the testing before embedding the code into the production environment. "I can't always test the code, right?" We have completed the development process, "the development of students to assume this attitude, it means that all work is thrown into operation." If the relationship gets stiff, the development students will even deploy more often, which will undoubtedly make things worse.
So what can developers help with?
In fact, the biggest problem of traditional delivery of source code or software package is that the environment depends on the control of the circumstances, it can not be standardized, IT staff often need to spend a lot of effort to solve the "environment" caused by the software running problems. Developers can look at Docker technology, a lightweight container management engine that packages software with its dependencies and delivers it in a mirrored manner, so that software can be run in a standard environment, which is very much in line with the development requirements of cloud computing. Of course, developers can also invite Ops to participate in the development meeting, to ensure that the logging and monitoring and other things can be properly resolved, so that basically can handle this matter.
Of course, in addition to Docker technology, there are now a number of professional tools available on the market, such as operations to deploy application Insight probes in development environments "development", test environments, and production environments " production", and then look at the performance of the system business in different environments in turn. For example, when a new feature comes online, there are no errors in the development environment, but errors can occur in the staging environment "staging", and OPS can quickly view the error messages on the Application Insight management Console and quickly position the problem It can be solved in minutes.
4. Often blame for others
Generally speaking, company managers often do not know much about technology. However, whether the site is slow to visit, or the system has a variety of errors, regardless of who, the company's bosses are looking for the operation and maintenance of students to solve. In a sense, yun-dimensional students have the responsibility to solve these problems, but do not rule out a lot of cases because of the development of a classmate code has a problem, so yun-dimensional students will inevitably be crazy. Not only to bear the mistakes of others, but also to Pinsipinhuo to solve the problem may not be caused by their own causes. Because there are no professional tools, operations is difficult to quickly locate the problem, so they often "have the suffering of words."
So what can developers help with?
Development students should learn to use the "pause" mode and try to postpone the delivery time of the code backwards. This will ensure that in the event of a problem, the development of the students in a timely manner to lend a helping hand. In general, developers have more professional experience and technology to fix problems.
In fact, the application performance management of the first brand OneAPM in this is the most obvious, because its core value is to help IT operations personnel for fault warning and positioning, help reduce business system maintenance workload. At the same time can be able to implement from the code class, method to database statement level rapid performance diagnosis. In addition to allowing the operation of the students less blame, but also to help develop students to accurately locate the problem code snippet. From then on, the development and operation of the students can also play happily together.
Operation of the most hated 4 things: the development of students can help do something?