百度应用部署秘籍

2023-11-19

【背景介绍】

传统PaaS采用sandbox实现app间的资源安全隔离,sandbox需要对运行环境和编程语言进行底层的功能限制,例如:禁止创建进程和线程,禁止部分系统调用,禁止对某些系统路径的读写,禁止加载C语言模块,禁止某些网络功能等,这大大增加了开发者的开发成本,也使得应用开发和跨平台迁移难度叫交接和学习成本变大,不利于平台的推广。另外困扰开发者的一个主要问题就是应用的云端运行环境与开发者的本地开发环境不一致,很多功能受到限制。开发者在本地开发调试好的应用,发布到云端就遇到沙盒限制问题无法运行,不得不针对云端环境进行修改。BAE采用轻量虚拟机技术进行资源隔离,在运行环境和编程语言层面,不做任何限制;应用在云端的运行环境与开发者本地的开发环境保持一致,从而使得学习成本、开发和迁移成本降到最低,开发者的生产力得到最大限度的解放。下图显示沙盒技术实现资源隔离(左)与轻量虚拟机技术实现资源隔离(右)的区别:
在这里插入图片描述

一、服务器部署评估

应用部署计算流量可能存在一个逐渐优化的过程,为了防止流量突增引起雪崩效益,针对php执行环境(代码为hello world),对单个执行单元并发20时候,qps达到530最高阈值,并发再次提高qps会下降,单个执行单元配置:单核,内存 512,带宽10M 。部分压测数据如下:在这里插入图片描述

注:当前压测数据是对执行单元最简单的吞吐校验。是线上和线下的一个辅助校验,当有后端服务的时候此数据会有量级减少

二、特性

执行单元由运行在轻量虚拟机内的一组进程构成;每个执行单元对应一个轻量虚拟机。开发者无需关心轻量虚拟机的存在,只需关注部署的执行单元即可。

假设有一个BAE部署分配了两个执行单元,每个执行单元对应一个轻量虚拟机,执行单元启动后,对应着轻量虚拟机里面的一组进程,包括lighttpd 和 php-fpm 进程等。若其中一个轻量虚拟机出现故障,BAE平台自动为其重新分配一个轻量虚拟机,并将执行单元部署到新的轻量虚拟机上,这就是执行单元的迁移。这种技术保证了应用的高可靠性。

运行环境和与编程语言无任何限制:对运行环境和编程语言,包括创建进程、创建线程、系统调用、执行C扩展模块、文件系统访问不做任何限制。

多种编程语言支持:目前支持PHP、Python、Java、Node.js,以后会陆续增加对主流开发语言的支持。目前的bae4.0开发者还可以自定义运行环境

编程框架的支持:编程语言层面没有任何限制,相应地支持特定编程语言的所有编程框架。无论是主流还是小众框架,只要能在开发者本地的环境中运行起来,则云端也能运行无阻。

自动安装依赖包:通过配置依赖包文件,云端环境可以自动安装用户指定的依赖包。例如,package.json是nodejs-web部署类型的NPM配置文件,用于配置node.js编译时的依赖包及启动时的入口文件,从package.json配置的依赖包在编译时安装在应用根目录的.bae/node_modules目录下。相似地,requirements.txt是python-web/python-worker部署类型的用户自定义依赖配置文件,用于配置编译时的依赖包。开发者部署代码时添加requirements.txt文件,其中指定的依赖包会下载安装到应用根目录的deps目录下。

丰富的服务支持:提供多样性的扩展服务,包括MySQL、MongoDB、Redis、Log、Port等。

自由的网络访问:多数PaaS对外的网络访问需要通过HTTP Proxy或Socket Proxy代理出去,而BAE对外的网络访问无需代理层的转发。此外,BAE提供扩展服务Port,允许开发者自定义对外提供服务的TCP端口,从而实现更复杂的业务逻辑。

新增worker类型:多数PaaS只提供web部署类型,BAE在此基础上提供worker类型,主要用于后台任务,例如爬虫,长期运行于后台,不停的去爬取各种网络资源。

本地开发环境:BAE提供基于跨平台虚拟化工具VirtualBox和虚拟机创建工具Vagrant的本地开发环境,通过模拟与BAE云端执行单元完全一致的虚拟环境,确保本地调试通过的代码部署到云端后可顺利发布,节省了因本地与云端环境不一致导致的调试成本,在一定程度上提高了开发效率。

环境部署:本地开发环境是BAE为方便开发者使用BAE CLI工具进行本地调试提供的Ubuntu虚拟机(12.04.2 LTS, 64bit)。

依赖于跨平台虚拟化工具VirtualBox和虚拟机创建工具Vagrant,本地开发环境通过模拟与BAE远端执行单元完全一致的虚拟环境,确保本地调试通过的代码部署到BAE后可顺利发布,节省了因本地与远端环境不一致导致的调试成本,在一定程度上提高了开发效率。

注意: 搭建并使用本地开发环境可以帮助开发者绕开本地与远端环境不一致引起的潜在问题,属于可选(optional)范畴,不是使用BAE部署Web应用的必须操作

Windows下安装依赖包

A. 下载localenv压缩包并解压。

B. 从解压包内的localenv/SOFTWARE目录安装Vagrant和Virtual Box

C. 将依赖包的安装路径加入可执行路径PATH。

  1. 单击“开始”,在弹出菜单中右击“计算机”,在下拉菜单中选择“属性”打开系统属性对话框。

  2. 单击右侧面板中的“高级系统设置”,打开高级系统设置对话框。

  3. 单击“高级”视图右下方的“环境变量”,打开环境变量对话框。
    在这里插入图片描述

  4. 编辑用户可执行路径或系统可执行路径,添加依赖包的安装路径并保存。路径之间需用分号(;)隔开,以默认方式安装依赖包为例,需添加的路径如下所示:

D:\HashiCorp\Vagrant\bin; C:\Program Files\Oracle\VirtualBox\

注意:

修改用户可执行路径仅影响当前用户,修改系统可执行路径将影响所用用户。

Linux下安装依赖包

A. 下载依赖包。Vagrant (版本高于1.2.2) VirtualBox

  1. 安装依赖包。

以debian-based系统(Ubuntu, Debian)安装Vagrant 1.3.5和Virtual Box

4.2.4为例,执行如下命令:

$ sudo dpkg -i ~/Downloads/vagrant_1.3.5_x86_64.deb

$ sudo dpkg -i /Downloads/virtualbox-4.2_4.2.16-86992Ubuntu~precise_amd64.deb

使用本地开发环境的常用开发调试命令如下:

• 使用BAE CLI工具本地发布

• $ bae app publish --local

更多BAE CLI工具的使用方法,参见CLI入门指南。

• 查看本地发布的部署

• PHP/Python/Node.js/Static:$ curl 127.0.0.1:8080 -H “Host: $app_domain”

• Java:$ curl 127.0.0.1:8080/$war_name/

• 单一语言虚拟机环境中添加对其他语言的支持:$ bae_install <Programming_Language>

如当前虚拟机环境仅支持PHP语言,执行`bae_install,java,后可以在本地同时调试PHP和Java语言的应用。

三、本机环境搭建

如果用户想搭建本地的真实运行环境,在此以linux环境搭建为例,整理步骤如此:确定自己要使用什么域名访问应用,以下例子用phpoffline.duapp.com.

/home/bae(应该已存在,bae用户主目录,运行入口目录)

/home/bae/bae(php目录,php环境)

/home/bae/lighttpd(lighttpd目录, lighttpd-1.5.0)

/home/bae/wwwdata

/home/bae/wwwdata/htdocs(lighttpd访问根目录)

/home/bae/wwwdata/htdocs/phpoffline.duapp.com(bae平台的应用目录,就是你定义的域名)

使用bae用户部署lighttpd

到我的网盘下载tar包:

http://pan.baidu.com/share/link?shareid=78893&uk=1846015233

解包后,包内的lighttpd目录对应/home/bae/lighttpd目录,(按此目录结构将会节省大量配置工作,自己衡量:)

接下来修改lighttpd的配置文件:

Lighttpd白名单:使用白名单内的域名访问所在机器,才会被lighttpd允许。

[root@test.baidu.com home]# vi /home/bae/lighttpd/conf/domain_whitelist(白名单配置文件)

加入自己要用的域名phpoffline.duapp.com,保存退出

Lighttpd配置:配置lighttpd的各种参数和路径

[root@test.baidu.com home]# vi /home/bae/lighttpd/conf/lighttpd.conf

var.rundir = “/home/bae/lighttpd”

var.wwwdir = “/home/bae/wwwdata/htdocs”

var.netpath = “10.40.72.110(此处是你机器IP):9898/log”

添加使用lua转发:

H T T P [ " h o s t " ] =   " ( . ∗ ) HTTP["host"] =~ "^(.*) HTTP["host"]= "(.)" {

vhost-magnet.path-pattern = var.wwwdir + "/%_"

vhost-magnet.attract-raw-url-to = ( "/bae_app_conf.lua" )

}

hosts 和软链

Root账户登录虚拟机,修改hosts文件

[root@test.baidu.com home]# vi /etc/hosts

添加这样一行:

10.... phpoffline.duapp.com,保存退出

Bae用户在/home/bae/wwwdata/htdocs下创建软链,指向应用的目录/home/bae/wwwdata/phpoffline.duapp.com

如果在windows下访问,请在hosts中配置域名和应用部署ip的映射关系,如:10.... phpoffline.duapp.com(linux sebserver服务器地址)

部署PHP

首先还是到我的网盘下载PHP部署用的tar包:http://pan.baidu.com/share/link?shareid=78968&uk=1846015233

下载后,里面有三个目录,放到/home/bae/bae下面去

修改PHP相应的配置文件:

首先检查/home/bae/bae/php/etc/php-fpm.conf,这2处配置与下图路径一致
在这里插入图片描述

然后检查/home/bae/bae/php/sbin/php-fpm,这3处与下图一致

在这里插入图片描述

最后,vi /home/bae/bae/phplib/php.ini

找到open_basedir项,把/home/bae/wwwdata/htdocs/*******.com替换为:/home/bae/wwwdata/htdocs/phpoffline.duapp.com

找到error_log项,确认是这个:/home/bae/lighttpd/log/php.log.wf

启动服务

Php启动/停止:

[bae@dbl-wise-tt-newrd07.vm.baidu.com home]#/home/bae/bae/php/sbin/php-fpm start(stop)

Lighttpd启动/停止:

[bae@dbl-wise-tt-newrd07.vm.baidu.com home]#/home/bae/lighttpd/bin/lighttpd_control start(stop)

部署应用

首先从svn上co自己需要的版本(待开发的4位版本或者最新基线,等等)

进入虚拟机的/home/bae/wwwdata/htdocs/phpoffline.duapp.com下,通过svn co命令把代码拿到该目录下下(拿下来应该是个appid****目录,目录结构应该是:app.conf,index.php)。在次场景对于的url是https://svn.duapp.com/appid0d9c295kd8。/home/bae/wwwdata/htdocs/目录下面建立域名 phpoffline.duapp.com 到ci 目录的appid0d9c295kd8的软链接。通过windows或是linux都能访问对于的应用。 Ln –s appid0d9c295kd8 /home/bae/htdocs/phpoffline.duapp.com

四、app.conf 和bae_app_conf.lua 转换关系

上传代码的时候使用时app.conf,但是转发的时候再lighttpd使用时lua转发。这是因为在代码发布的时候平台对app.conf做了转发切换,app.conf介绍请参考:https://bce.baidu.com/doc/BAE/GUIGettingStarted.html#.E9.85.8D.E7.BD.AEapp.conf

这里以一个基准app.conf和bae_app_conf.lua生成转化:
在这里插入图片描述

其他转换请参考:http://pan.baidu.com/s/1bnTUijP

更多干货分享请关注”百度MTC学院“http://mtc.baidu.com/academy/article

期待你的加入

百度开发者中心已开启征稿模式,欢迎开发者登录developer.baidu.com进行投稿,优质文章将获得丰厚奖励和推广资源。
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

百度应用部署秘籍 的相关文章

  • 百度飞浆行人多目标跟踪笔记

    开源地址 PaddleDetection configs mot at release 2 3 PaddlePaddle PaddleDetection GitHub 百度飞浆集成了多目标跟踪的多种算法 地址 PaddleDetection
  • 0x0000007B:A problem has been detected and windows has been shut down to prevent damage to your Comp

    0x0000007B 这个代码和硬盘有关系 不过不用害怕 不是有坏道了 是设置问题或者病毒造成的硬盘引导分区错误 如果您在用原版系统盘安装系统的时候出这个问题 那说明您的机器配置还是比较新的 作为老的系统盘 不认这么新的硬盘接口 所以得进B
  • 推荐一个很适合程序员的副业!

    推荐一个超级赞的副业就是有声书录制 从2013年到现在已经火了9年时间 可谓是源远流长 这个兴趣爱好衍生出来的副业已经承载了上百万小白从业人员 头部主播的年收入都破了百万 有声书录制的发展历程可以概括为 或许曾经混沌 但必定未来可期 判断一
  • 在vue项目中用BMap百度地图自定义定位icon不显示

    我自定义了图标但是不显示 先来看一下怎么用百度地图自定义图标 var myIcon new BMap Icon 自定义图标 require assets image L gif new BMap Size 24 21 图标的宽度和高度 va
  • 0基础也能看懂,软件测试怎么去介绍一个项目的测试流程?

    软件测试流程及规范 一 目标 制定完整且具体的测试路线和流程 为快速 高效和高质量的软件测试提供基础流程框架 最终目标是实现软件测试规范化 标准化 二 测试流程说明 三 需求分析 需求分析由SA制定 要求细化每一个功能的细节 每一个按钮的位
  • Java6.0中Comparable接口与Comparator接口详解 下

    Part IV 说到现在 读者应该对Comparable接口有了大概的了解 但是为什么又要有一个Comparator接口呢 难道Java的开发者都吃饱撑着没事做吗 再谈Comparator接口之前 大家应该先了解一个叫 策略模式 的东东 一
  • DELL戴尔笔记本电脑灵越Inspiron 14 5410&5418原厂Win10系统恢复原装OEM出厂状态系统

    Dell戴尔笔记本电脑 灵越Inspiron 14 5410 5418原装出厂OEM系统镜像原厂系统文件 系统自带所有驱动 出厂主题壁纸LOGO Office办公软件等预装程序 链接 https pan baidu com s 1Qj dW
  • python单元测试之pytest

    前提 需要安装pytest和pytest html 安装pytest 在控制台输入 命令 pip install pytest 进行下载安装 安装pytest html 在控制台输入 命令 pip install pytest html 进
  • 强化学习算法 DDPG 解决 CartPole 问题,代码逐条详解

    本文内容源自百度强化学习 7 日入门课程学习整理 感谢百度 PARL 团队李科浇老师的课程讲解 使用DDPG解决连续控制版本的CartPole问题 给小车一个力 连续量 使得车上的摆杆倒立起来 文章目录 一 安装依赖 二 导入依赖 三 设置
  • 搜索引擎的发展历史

    第一代搜索引擎 分类目录时代 分类目录时代的的搜索引擎会收集互联网上各个网站的站名 网址 内容提要等信息 并将它们分门别类的编排到一个网站中 用户可以在分类目录中逐级浏览并寻找相关的网站 搜狐目录 hao123等就是典型的分类目录时代的代表
  • 蓝翔:百度开源深度学习平台飞桨的核心技术及应用

    分享嘉宾 蓝翔 百度 资深研发工程师 编辑整理 张兰兰 人民银行 出品平台 DataFunTalk 导读 近期 DataFunSummit AI基础软件架构峰会以线上形式成功召开 其中深度学习框架论坛更是云集了各大著名科技企业的顶级专家 来
  • 百度AI加速器-百度智能云千帆大模型平台专项首期开营

    9月2日 3日 百度AI加速器 百度智能云千帆大模型平台专项计划第一期加速营在百度大厦举办 经过为期一个月的招募 上海烯牛信息 北京谷器数据 北京烽火万家 上海知潜等15家AI创业企业入选并参与首期开营仪式 入营企业将获得百度智能云提供的一
  • 一文2000字详细介绍Android APP 常见概念与 adb 命令

    01 背景 因 team 正在推进 APP 自动化测试 那么主要业务是 IoT 相关的产品 既然是 APP 自动化测试 那么 Android APP 相关的一些概念与知识就很关键了 在之前遇到相关的问题都是现查现用 对于一些常用的概念和命令
  • Qt+百度AI实现人脸识别之人脸检测

    文章目录 简单需求 Demo运行结果 百度AI人脸识别接入 为什么使用百度AI接口 接入步骤 如何获取Access Token Qt软件开发 人脸检测Qt编程步骤 知识点 网络编程 get put post请求方式的区别简述 POST 提交
  • 赶上ChatGPT的车,百度文心一言和阿里通义千问上线

    百度 文心一言 地址 https yiyan baidu com 阿里 通义千问 地址 https tongyi aliyun com 以下介绍来自官方 一 文心一言 介绍 你好 我是文心一言 ERNIE Bot 作为一个人工智能语言模型
  • 百度智能云助力华瑞园智慧社区项目荣获IDC大奖

    在当今数字化 智能化的时代 科技的力量正日益显现 它改变着我们的生活方式 提高着我们的生活质量 9月15日 2023年IDC中国未来企业大奖优秀奖名单公布 在公众投票与专家评选团的严格评选下 百度智能云提供技术支持的 华瑞园智慧社区 项目荣
  • 巴比特

    摘要 9 月 13 日 阿里云宣布通义千问大模型已首批通过备案 并正式向公众开放 百度发布文心一言插件生态平台 灵境矩阵 向广大开发者开启邀测 并提供百亿流量 亿元基金等激励措施 扶持插件生态建设 图片来源 由无界AI生成 热点资讯 百度发
  • 百度智能云章淼:详解企业级七层负载均衡开源软件BFE

    随着云计算和云原生的发展 七层负载均衡得到了越来越多的关注 同时也出现了很多不同的解决方案 BFE是基于Go语言编写的七层负载均衡开源软件 在2020年6月被CNCF接受为 沙盒项目 成为中国第一个网络方向的CNCF开源项目 2022年7月
  • 百度2012实习生校园招聘笔试题

    1 给一个单词a 如果通过交换单词中字母的顺序可以得到另外的单词b 那么b是a的兄弟单词 比如的单词army和mary互为兄弟单词 现在要给出一种解决方案 对于用户输入的单词 根据给定的字典找出输入单词有哪些兄弟单词 请具体说明数据结构和查
  • CSDN平台上怎么样才能赚钱?

    CSDN平台上有多种方式可以赚钱 以下是其中几种常见的 1 写作赚钱 CSDN平台鼓励用户积极创作原创技术博客 通过博客的阅读量和转发量来获取广告收益 用户还可以发表付费文章或参与付费专栏 在文章的阅读量和付费订阅量上获得收入 2 交流赚钱

随机推荐

  • 02-12306验证码预处理(分割、转存dat、解析dat文件)

    import cv2 as cv import numpy as np import os import binascii temp path r F python StockAnalyzer test test avi img path
  • 决策分类树算法之ID3,C4.5算法系列

    一 引言 在最开始的时候 我本来准备学习的是C4 5算法 后来发现C4 5算法的核心还是ID3算法 所以又辗转回到学习ID3算法了 因为C4 5是他的一个改进 至于是什么改进 在后面的描述中我会提到 二 ID3算法 ID3算法是一种分类决策
  • 从TCP协议的原理来谈谈rst复位攻击

    在谈RST攻击前 必须先了解TCP 如何通过三次握手建立TCP连接 四次握手怎样把全双工的连接关闭掉 滑动窗口是怎么传输数据的 TCP的flag标志位里RST在哪些情况下出现 下面我会画一些尽量简化的图来表达清楚上述几点 之后再了解下RST
  • svn软件常用命令

    下载代码 命令 svn co 代码路径 查看工程中被修改的文件的内容 命令 svn diff 查看工程中文件的状态 命令 svn status 备注 状态是 M 就是被修改过 M是modify的缩写 回退被修改的文件 命令 svn reve
  • 2020中科院sci分区查询_查询SCI分区有几种方法

    查询SCI分区有几种方法 SCI分区目前有两种方法和标准 一个是中科院分区 一个是JCR分区 SCI期刊的分区有着重要意义 SCI期刊的影响因子都是浮动变化的 如果以一个影响因子的固定值来区分期刊是不合理的 不同领域内的期刊影响因子也没有可
  • Java单链表反转 详细过程

    https blog csdn net guyuealian article details 51119499 一 单链表的结点结构 data域 存储数据元素信息的域称为数据域 next域 存储直接后继位置的域称为指针域 它是存放结点的直接
  • Microsoft Dynamics CRM 安装注意事项(请朋友们补充)

    最近安装Microsoft Dynamics CRM 遇到的了很多烦人的小问题 特此记录下需要注意事项 仅供参考 服务器 Windows Server 2012 R2 Datacenter 安装及顺序 IIS gt SQLServer gt
  • 高质量、高并发的实时通信架构设计与探索

    中国互联网络信息中心 CNNIC 近日发布的第 47 次 中国互联网络发展状况统计报告 显示 截至 2020 年 12 月 我国网民规模达 9 89 亿 随着社会信息化水平持续提升及电子设备加速普及 手机网民规模持续增长 基本实现对全体网民
  • D - Robots Easy (脑残题)

    D Robots Easyhttps vjudge csgrandeur cn problem Gym 102267D 题意 对于给出的 12 12 的图 有 l 组查询 每组给出一个坐标 要求从这个坐标开始行走 遇到黑色或在边界不能走 直
  • AGPBI: {“kind“:“error“,“text“:“Program type already present: android.support.v4.os.ResultReceiver$1“

    使用环境 遇见 解决方法 第一步 object下的build gradle文件中build gradle版本号修改 第二步 object下的Gradle版本号修改 具体对应版本 没有一个固定的对应关系 取决于创建项目时创建者当时的AS环境
  • cpp: Observer Pattern

    Gold h 此文件包含 Gold 类 Observer Pattern 观察者模式 C 14 Jewelry Observer Pattern 观察者模式 2023年5月10日 涂聚文 Geovin Du Visual Studio 20
  • 数据结构 严薇敏 顺序表的实现(增 删 改)及其使用方法详解

    时间复杂度 数据结构 时间复杂度和空间复杂度 目录 1 线性表 2 顺序表 2 1概念及结构 2 2 接口实现 SeqList h SeqList c 2 2 1初始化链表以及销毁链表的实现 初始化顺序表 销毁顺序表 2 2 2查找元素前驱
  • 如何使用FolderSync在Android和PC之间同步文件

    On the desktop apps like Dropbox and Google Drive sync folders between your devices But on your phone it only gives you
  • Windows下命令行及Java+Tesseract-OCR对图像进行(字母+数字+中文)识别,亲测可行

    Windows下Java Tesseract OCR对图像进行字符识别 亲测可行 1 下载tesseract ocr 中文语言包并安装 2 命令行对图片进行识别及效果图 3 Java调用Tesseart OCR 3 1 效果图 3 2 源码
  • SlideLive:免费的PPT模板网站

    简介 在平时的学习和工作中 我们经常需要使用到PPT模板 包括课程报告 团体活动等 本文给大家介绍一款免费的PPT模板的网站 SlideLive 官网地址 https www slidelive cn SlideLive
  • 完美解决Echarts X坐标轴下方文字最后一个字体加粗颜色加深的问题

    之前用Echarts画图的时候 X坐标轴最后一个字存在自动加粗的问题 也是在网上找过解决办法没有找到 后面自己研究明白了后 在某篇文章下评论了如何解决 但是好像大家没有看评论的习惯 所以单独拿出来一篇文章 希望能给大家解决下问题 下面是有问
  • Mysql基础篇笔记-第09章_子查询

    仅作个人笔记使用 本篇的学习来源是 尚硅谷Mysql基础教程 宋红康 教学视频来自B站 MySQL数据库教程天花板 mysql安装到mysql高级 强 硬 感谢老师的教学 第09章 子查询 子查询指一个查询语句嵌套在另一个查询语句内部的查询
  • 具有不同颜色单元格的JTable

    最近在实现操作系统分页式存储管理演示程序时实现了设置JTable对象单元格不同颜色效果 在网上也有这方面的一些提问和讨论 但很多论坛内都没有很好的解释或完整的程序 因此将这段程序贴出来 供大家学习和指正 在本例中 每个单元格的颜色随机生成
  • 《Mysql是怎样运行的》读书笔记之独立表空间结构

    目录 数据目录 表空间 数据目录 mysql的数据目录是用来存储MySQL运行过程中产生的数据 数据目录对应一个系统变量datadir 查看这个系统变量就可以了 SHOW VARIABLES LIKE datadir 每次创建一个数据库时
  • 百度应用部署秘籍

    背景介绍 传统PaaS采用sandbox实现app间的资源安全隔离 sandbox需要对运行环境和编程语言进行底层的功能限制 例如 禁止创建进程和线程 禁止部分系统调用 禁止对某些系统路径的读写 禁止加载C语言模块 禁止某些网络功能等 这大