 Alright, so let's start. Good afternoon. It is my great pleasure to share with you the simplest best practice on the cloud, which means that how can we do a winning program on a WeChat in 7 days. My name is Tina Pham, and I'm a product manager of the Tencent Cloud. Today I would like to share our practice with my co-workers, Mason. Well, actually I would like to know how many of you have already used the mini program for WeChat. Okay, almost all of you. How many of you have used the serverless mini program on WeChat? Well, actually, some of you have already attended our workshop yesterday, and quite a lot of you have already used that kind of mini program. And today I would like to share with you a case on the development progress. And later I would like to share with you the background of the mini program, and finally as a product manager I would like to give you the elaboration and the product architecture. Mason, who will share with you how to put that into the practice and tackle the challenges during the development. And last I would like to give you a summary. So let's go back to March last year. So just treat me as a product manager of the album from Tencent, and then I would like to share with you what is that look. And all the products are motivated from an idea. And this kind of the album was the album in the Kill of Zoom. At that time you can access to these albums via the mobile phones and PCs. But actually there is a bottleneck regarding to the increase of the users. I would like to have more users and to attract more users to use these great albums. We hope that we can present the Tencent album in the mini program format. So this is how it looks. I don't know whether you can see or not why we choose the mini program. I would like to share with you some data. The mini program is not really in 2019 in the quarter one. The combined users of the WeChat has already reached 1.1 billion in the beginning of the 2017 to the end of the 2018. And also we have 230 million active users on the WeChat. So we know that there are a lot of active users on the WeChat. We know that mini program is really convenient in the WeChat. There are some advantages. First one is really fast. It's really fast to open. You don't need to download that. And the second one you don't need to compare to both it or change it. You can develop it and then it can be compatible with the Android device or the iOS users. And you can send it to your friends or to the group chat. The experience is really good. You can use it as good as the native program. You can also get it by searching and by the repos of others. The threshold of having this kind of mini program is really low and all the people and the enterprise can register and account and then develop this kind of mini program as the product manager for the requirements of the users. And for the development for the developers they need to have some ideas and for these. In order to develop this album it must be able to access to the pictures and must be worked as a platform for the social network. For example, it can be light and come out by others. And we know that this mini program is the album on the Q-Zone so we believe that they would have a lot of users. At the very beginning, we hope that we can launch it in 4 weeks. The timeline is really clear and now I would like to give the floor to the Mason Michael Workers and he will share with you how he tackle all the challenges he has. Good afternoon. My name is Mason. I am the advanced architecture in the Tencent Cloud. I would like to share with you how can we deliver this mini program in technical and later my task is quite technical so I hope that you can understand me. Tina is really clear that the mini program has some functions and it has 4 keywords more fast, good and safe. So we need to have the mini program which can have a million users which means that it must be stable. So in order to launch it in 4 weeks it is quite hard and quite difficult if we need to develop in the traditional way. So let's see that's what we need to do if we develop in the traditional way. First we need to have the enough manpower to support the project first we need to have the front-end engineer to back-end manager and one tester and if we can have this kind of staff from other projects team and it's really great and I developed it that within 4 weeks but actually if we cannot do that we need to recruit more staff and I don't know that how long we can recruit the capable number and after we have the team we need to build the account. We need to buy the domain name to buy the machine to help me to deploy the environment. For example I need to use the JS to develop the mini program and need to ask the manager to install the machine and to build a lot of lock system monitor system and after that the front-end manager engineer and the back-end engineer can develop the mini program on the environment and then the tester can involve and then the maintainers can help to deploy the mini program on the environment and then I will just release it to the environment and if everything goes well it will take at least 8 weeks and if I don't have enough team members it will be longer so it's really hard control. I can give the final product to team up within the time so what can we do? We think that the main problem is the environment building and the environment so let's look at the development in the development besides the business logic I need to understand the framework. I need to know what kind of framework I like to use and how to operate the database and storage and in addition I need to pay attention to the performance I need to use some code and this kind of code must be robust enough they must be robust enough to support the usage and I need to know the environment for example the Kubernetes and for the maintainers they need to pay attention to the stability and the safety of the mini program so from top to down it is quite challenging for the capacity of the team and we need to invest more time in the code development and in optimization as well as in the optimization of the performance and the robust of the mini program so if the team can melt the environment and the environment I can apply for the deployment online so I will have this kind of we know that maintenance is quite painful besides paying attention to the business clusters they need to pay attention to the support of the modules and the components and the testing is quite challenging as well besides the testing of the function and the features I need to test the performance of all the modules and the components and I need to know that whether it is still stable where millions of the users are using these mini programs at the same time it is not so hard for developers they don't need to care about so many details but for the developers they need to develop a really good architect to support the iteration of the functions later so I still need to I need to have a question for the program how about the safety and how about the support for our team we are not really good at operating and maintaining the environment so if we can reduce the components which has nothing to do with the core business for example the core balancing and the safety if all this can be done by the operators and maintenance of the testing of the modules it will be really simple I just pay attention to the business logic and this will be the architect I need to pay attention to the cluster and the database as well as the storage and this kind of architecture looks really perfect because everything has nothing to do with the core business such as the architecture and maintenance has already been shielded so whether it can be realized or not well the answer is definite because we have these several concepts so we can really convenient to remove the maintenance and the resources which has nothing to do with the core business so for the users so they just use the serverless solutions to build the architect the serverless concept has already been available for a really long time in the beginning of the last year and the WeChat and Tencent Cloud just combined together to develop on the serverless which is benefit from defaults in China because of the operating on the cloud the computing of the core business can be serverless so after serverless is available and we can deliver the we can see the structure so behind the cloud is the background or mini program it has this cloud function storage database after this resource envelope they can become available to customers and the users can use it right away and the mini program set the request which will be delivered to the cloud development in a special line so the security is guaranteed and the background is based on serverless so there is no issues about high occurrence or other issues because these services will be delivered by Tencent Cloud and this enables the maintenance team for real-time monitoring to help the maintenance team to ease their job these are the features it looks abstract we can take a close look about the application of for example cloud development suppose that I already have a mini program demo and I want to deploy it based on this cloud development and how should I do it first I need to build a new project and I import I can import the existing project suppose that I already have which one and this is the official idea with this idea then I can develop the mini program this is the simulation of this interface of mini program and on the right is the simulation of the development for example in deployment of functions I can easily upload the functions to the cloud on the right you can see the development is achieved and this is the interface of the mini program and go to the background you can see the I want to see the the functions I can save this review for my album and then we can see the cloud function is deployed so this way on the right on the left you can see the environment ID and I need to pick this environment and then if you have developed the mini program about the authentication can be complicated but here it has this impute user authentication then you can get the user's open ID easily let's go to the background the database and the user login successfully for a story because there's no picture upload so you don't see any from here we login successfully then we can get the user's open ID I can compile or preview it easily on the cloud phone for example I want to preview a QR code I can use the cell phone to scan the QR code to test this mini program this is my user's login and this is the album and I can create the demo name for this album I can submit a picture so the functions actually have been working for the whole system let's say I developed the mini program well and from the import to development to mobile test it takes only 5 minutes this comes to 70s and the core between logic here if I want to have my mini program to accommodate millions of users then I need to know what is fast, what is 70s, what is what is fast and for developers it's easy they just need to upload the module and the code that would be fast and when I have this mini program and when there is a request I can just send the request to the platform and the fast will have enough instances to meet my request and in the cloud function instance I can call the storage AI interface this is for the fast and fast and in this structure is the combination of fast and fast this is actually a presentation of serverless so in the structure serverless use the underlying resources as API envelope and provided to users so what are the features of serverless first it provides infinite elastic computing power at the back end second user can get the business code easily because it's out of box they don't need to be worried about server or back end environment lastly when there is a request from the mini program end then they can call the SDK easily and run the function it's automatic and at the back end the functions after written it can be deployed easily at the background then basically is zero maintenance so I've talked about the structure now let's look at the implementation of serverless in this the core function of TensorFlow is a social feature if I use the traditional development approach there will be a lot of challenges first I need to have enough maintenance power to build and monitor the lobbying system second developers need to choose the framework to write the logic to build the code and there is historical burdens as well it's very difficult for me to add new features based on the system background or structure but with serverless this challenge is no longer a problem to us and this request will be delivered to the cloud function the cloud function will work on the authentication after it is authenticated this request will go back to the cloud function the cloud function operates the database now I can give you a code example compared to the traditional development approach if I want to realize the future the traditional development approach will take days I need to pay attention to routing and maintenance but with serverless with SDK I can call right away the cloud function I can reach out the cloud and cloud function then I can request require to go back to the background and to realize this program and in this cloud function after I get the request in the context I can get users overnight easily so I don't need to ask for authentication to reach out this is a code example for performance at the end of last month you can see the request and the total time consumption is below 7 millisecond in other words the cloud function can respond to your request for a brief summary this is a comparison of traditional approach and serverless approach so we can see the traditional approach would require 10 weeks engagement of one person and it will also require maintenance team to do the online maintenance but for serverless approach one person only 3 weeks and you can work on the front end and back end work the test can be completed in a week by a person so we can see that serverless approach help us to minimize or streamline the structure for me program let's say it's like it has limited background the maintenance team no longer need to monitor the logging system it takes a lot less time for development that's why with the serverless approach I can develop a beta version mini program in 2 weeks this mini program reached 10 million users by the end of last year which is ahead of our set targets so now I would like to give the floor to Tina again so Tina will talk about what would happen when 10 serverless meet which mini program thank you Mason for your detailed presentation so after we launched this mini program maybe you will talk about what would happen when the serverless 10 serverless meet which mini program first it help encourage higher development efficiency and for enterprises and individuals basically it interest the features to the cloud individuals and enterprises they can focus on their own core business logic and it is high available and it supports autoscaling and it helps to reduce resource investment including the manpower input and the financial input because it supports the use of smart and we chat mini program development you leverage the serverless as a platform and we can realize the app program development easily and we don't need to pay attention about the details so you may wonder about the customers there are many customers who use this serverless structure they are from education sector, e-commerce and also internet company as well they are now transforming to serverless structure so I hope that when we want to implement our idea it can be a mini program or mini game I hope everyone can realize their idea so we really want to set the bar low and with this platform it will help you to implement your idea I think I already share all the things I would like to share with you today if you are interested we would like to extend our team as well so if you join us, welcome to talk to us this is the public account of the cloud native of the Tencent the resource available later will also be available in this which account as well the serverless is quite mature regarding to the development of the mini program we also have a lot of key services as well currently there are a lot of internet companies they are restructuring so if you are very interested and you can scan the QR code and you can also scan the QR code to join the QQ chatting group to talk to us as well so any questions from the floor good afternoon I would like to know that is the serverless is the open source a lot compared to other emerging serverless framework any other advantage and disadvantage of the serverless or any other scenarios are not suitable to use the serverless well I would like to elaborate the serverless well actually serverless is more earlier than the P90 so the relationship between these two is that the framework of the P90 and the serverless framework is different well for the serverless we just built anything on the Kubernetes and we also use the Kubernetes for the scheduling and we also use the virtual machine later so we don't think that it's as safe as the virtual machine but all these kind of problems of the Kubernetes there's also challenges for the serverless as well for example the all-store is the so our value is less to optimize the serverless the most important is the ecosystem for the serverless a lot of people thinks that it's a lot of problems but we'll help the developers to launch a lot of IDE the DevOps all these will reduce the threshold of the developers of the Kubernetes and for the Kubernetes I think that in order to improve that they need to improve their ecosystem as well but actually it's not the same for the serverless no matter how great it is no one can use it it's that it's many ways and after the launching of the mini program it has more than 10 millions of users because it also attracts the users of the virtual a lot of people think as well they think that what we do is the same as the event trigger the message is mentioned that it will have problems such as the Oshark and all these kind of event trigger the event trigger the thing is that it's suitable for the program which will have a lot of the concurrence but actually it will also have the two points of that work besides this we also want to use the serverless method to support the serverless framework which means that from the front end to the end back end we already use the development and control of the micro service framework we hope that we can transfer that to the serverless network and we are also working on this part as well good afternoon I have two questions the first one I think your demo is really great because you have a lot of the users so my understanding is that you have a lot of the users they will play a lot of the containers and they also have the database in the background so I would like to know that the execution environment is connected to the database directly or not and how do you do with the container problem the same question is that for the development kit for the mini program you also have the WS and cloud so I would like to know that you have already integrated to the NBPA and the kit or not but actually your questions are really great as well for the users when they develop the program when they write out the business code they always have the connection code and this problem has been solved in the serverless as well but when you are filled I cannot fool when I have a lot of the users the background is already in the resource pool and I just mentioned that the containers in the background there is already a really big resource pool for the clusters so the users they need to create the containers they just send the request it's okay so it can reuse the process of the development and when I am not to the database there is the the resource pool what I need to do is to schedule the sockets the request is a pool I just can access the database so on both end there is a pool so that the users doesn't need to worry whether they need to connect to the resource pool or not they just reschedule the socket it's okay and another one is the function actually the backstage program has already been packaged so when the SDK is imported to the WeChat they can use the WeChat app or the WeChat data or the WeChat function so in this way they can schedule the sockets in the backstage and in this way they can skip other stuff and I think the SDK will go later beside the component in the database storage I don't need to worry about the resource pool I don't want to I hope that the database can help us to hold in my face be in the database they can help me to deal with the failure tolerance what is the cause of using these I forgot to tell you well actually I'm not going to talk about this point well the environment has a free package in this free package there is a fixed number of the resources so you can get the quota of each month so you don't have a lot of requests yeah I think it's okay to use the free package and later if the mini program is really great and I will have a lot of users and I will have a lot of the package you can upgrade the package so the upgraded one can accommodate millions 10 millions of the request for today well actually we also give you some examples as well for the specific price and I'll tell you later and actually I'll just give you a comparison the free package and the service one when you use the service you don't need to pay so much attention to the operation and the maintenance and the package is also charged based on the requirement which means that if you don't have any request sent during the nighttime you don't need to cost anything so as long as your city usage is lower than 70% I think that's really a good deal for you well actually due to the time limitation if you have any questions you are welcome to talk to us privately