在PACS实验室开发,作为无服务器计算平台的性能模拟器。

pacssim的Python项目详细描述


DOIBinderPyPIPyPI - StatusTravis (.com)Documentation StatusLibraries.io dependency status for latest releaseGitHub

这是一个在PACS Lab中完成的项目 旨在为无服务器计算开发一个性能模拟器 平台。使用这个模拟器,我们可以计算服务质量 (QoS)指标,如平均响应时间、 冷启动、平均运行的服务器(直接反映平均成本), 不同事件的柱状图,服务器数量的分布 以及其他许多特点。在

开发的性能模型可用于调试/改进分析 性能模型,尝试新的和改进的管理模式,或者挖掘 所有的属性都有一个共同的现代规模,每个请求无服务器 平台。在

要求

  • Python 3.6或更高版本
  • 皮普

安装

使用pip安装:

pip install pacssim

使用pip升级:

^{pr2}$

对于开发模式下的安装:

git clone https://github.com/pacslab/pacssim
cd pacssim
pip install -e .

如果您希望能够执行以下示例:

pip install -r examples/requirements.txt

使用

无服务器模拟器的简单用法如下所示:

frompacssim.ServerlessSimulatorimportServerlessSimulatorasSimsim=Sim(arrival_rate=0.9,warm_service_rate=1/1.991,cold_service_rate=1/2.244,expiration_threshold=600,max_time=1e6)sim.generate_trace(debug_print=False,progress=True)sim.print_trace_results()

它将打印类似于以下内容的输出:

100%|██████████| 1000000/1000000 [00:42<00:00, 23410.45it/s]
Cold Starts / total requests:    1213 / 898469
Cold Start Probability:          0.0014
Rejection / total requests:      0 / 898469
Rejection Probability:           0.0000
Average Instance Life Span:      6335.1337
Average Server Count:            7.6612
Average Running Count:           1.7879
Average Idle Count:              5.8733

使用此信息,您可以在中预测系统的行为 生产。在

发展

如果你有兴趣改进这项工作,你总是 欢迎打开拉请求。如果你需要更多的细节或者 解释一下,联系我。在

要启动并运行环境,请在 正在安装Anaconda

conda env create -f environment.yml
conda activate simenv
pip install -r requirements.txt
pip install -e .

在更新自述文件.md,使用以下命令更新自述文件.rst 因此:

bash .travis/readme_prep.sh

示例

无服务器性能模拟器的一些可能使用案例 显示在Github存储库中的examples文件夹中。在

许可证

除非另有规定:

麻省理工学院(c)2020尼玛·马哈茂迪和哈姆扎伊

引文

你可以在PACS lab website中找到模拟器的详细信息。你可以使用 以下是bibtex引用我们工作的条目:

@software{mahmoudi_nima_2020_3906617,author={Mahmoudi, Nima and
                  Khazaei, Hamzeh},title={{PACSSIM: A Performance Simulator for Serverless
                   Computing Platforms}},month=jun,year=2020,publisher={Zenodo},version={0.1.3},doi={10.5281/zenodo.3906617},url={https://doi.org/10.5281/zenodo.3906617}}

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
JavaSpringBootHibernate5忽略@Table和@Column   java readLine是如何工作的?   java除了Oracle的JVM(windows)之外,还有什么BSD许可的替代方案吗?   javascript处理程序执行导致异常:所需的MultipartFile参数“file”不存在   java如何检查url是否与标识符匹配?   java在对象创建之后实现一个接口   java安卓:如何将github库放入项目中   java如何制作自定义文本组件?   如何在java中更新属性文件   java Hibernate持久映射   JavaSpring批处理如何从postgres读取数据,然后在步骤中写入数据   java应用程序已在Android Emulator Eclipse中停止   java找不到参数[org.jetbrains.kotlin:kotlinstdlibjdk7:1.3.50]的方法实现()   java AWS DynamoDB如何从数据库中获取只有一个字段的对象   在使用ajax进行表单提交时,java无法阻止默认表单提交   集合如何在Java中定义基于两个变量进行比较的比较器   多线程基准测试Java中的多线程集合   java如何通过浏览器运行终端程序?