2019-01-17 biezhi
REST 是一种现代架构风格,它定义了一种设计 Web 服务的新方法。和之前的 HTTP 以及 SOA 不同,它不是一个协议(即:一套严格的规则),而是一些关于 Web 服务应该如何相互通信的一些建议和最佳实践。按照 REST 最佳实践开发的服务被称为 “RESTful Web 服务”。 继续阅读 »
2015-06-27 W.Y.
ES6
本文将讨论使 JavaScript 函数更有表现力的两个特性:Rest 参数和参数默认值。 Rest 参数 通常,我们需要创建一个可变参数的函数,可变参数是指函数可以接受任意数量的参数。例如,String.prototype.concat 可以接受任何数量的字符串作为参数。使用 Rest 参数,ES6 为我们提供一种新的方式来创建可变参数的函数。 我们来实现一个示例函数 containsAll,用于检查一个字符串中是否包含某些子字符串。例如,containsAll("banana", "b", "nan") 将返回true,containsAll("banana", "c", "nan") 将返回 false。 下面是传统的 继续阅读 »
2016-08-12 Jamling
{% asset_img weather.png %} 在[QuickAF]中使用基于Volley的网络数据连接框架。能够方便地执行REST API网络请求,并与界面进行交互。在本文中通过一个天气查询的综合示例来讲解[QuickAF]中如何进行网络请求。 继续阅读 »
2015-07-13 Eric Wang
Version:Python 3.4.3 (v3.4.3:9b73f1c3e601, Feb 24 2015, 22:44:40) [MSC v.1600 64 bit (AMD64)] on win32 函数 可接受任意数量参数的函数 为了能让一个函数接受任意数量的位置参数,可以使用一个*参数 ```python def avg(first, *rest): return (first + sum(rest)) / (1 + len(rest)) Sample use avg(1, 2) # 1.5 avg(1, 2, 3, 4) # 2.5 `` 在这个例子中,rest`是由所有其他位置参数组成的元组。然后我们 继续阅读 »
2017-07-28 Lingxian Kong
OpenStack Swift 中的 swift3 middleware 使 Swift 兼容 AWS S3 的 API,毕竟相对于 Swift 来说,S3的用户可能更多,大家可能已经习惯于使用 S3 的众多工具来操作对象存储,其中 s3cmd 和 s3curl 是两个比较常用的s3命令行工具。s3cmd 相对于 s3curl 可能是更为上层的封装,更易于使用。但如果想通过 s3 rest api 的方式与 Swift 通信,那么 s3curl 是最佳选择。很多编程语言提供的 s3 sdk,在最后也都是转换成 rest api 的形式。正好今天给一个用户定位一个问题(该用户使用 PHP S3 SDK 访问我们的 Swift 服务)时 继续阅读 »
2014-08-02 Lingxian Kong
当你开始使用OpenStack,基本上都是从一个已搭建好的环境入手,别人(operator)会告诉你horizon登录的租户名、用户名和密码。 但毕竟horizon不会封装OpenStack的所有特性,当你已经玩腻了页面上那些功能时,你想尝试更多更丰富的功能,那么恭喜你,你已经向中级玩家迈进了一步。中级玩家对OpenStack的使用基本上有四种方式: OpenStack client cURL Rest API OpenStack SDK 我个人比较倾向于使用client和API,因为cURL的用法其实跟发送RestAPI相似,但cURL不太方便操作(因为我们普遍都喜欢在可视化页面点击按钮);而SDK则更多是基于OpenS 继续阅读 »
2016-04-20 Lingxian Kong
在octavia中,实际的loadbalancer服务是由虚拟机提供,所以在虚拟机中需要运行服务与octavia通信,接收octavia发来的操作指令,配置网卡、路由以及haproxy和keepalived软件。 实际上,虚拟机里面会运行amphora-agent进程,对外提供REST API访问,如下所示: 继续阅读 »
2017-08-25 Lingxian Kong
之前为了测试 Ceilometer API 性能的时候就用过 locust,为什么用它呢?记得当时我有这么几个需求: 基于 Linux 命令行。我不用 Window 系统很多年了,而且为了偶尔几次性能测试也不值得去买一些软件的 License,所以像 SoapUI/Loadrunner 这类其实还不错工具就首先被排除了 支持 REST API 支持 https 的 insecure 设置 支持自定义 header 继续阅读 »
2019-01-18 Vaniot
客户端与服务端 客户端获取资源的表述(资源的外在呈现)不是资源的本身,资源的的表述包含了数据的描述和数据的元数据,浏览器与服务器间通过HTTP协议协商,浏览器通过Accept头请求一种特定的格式表述,服务器通过Content-type返回给浏览器客户端资源的表述形式。 状态转移 在REST设计原则中客户端与服务端的交互是无状态(HTTP协议的特性),客户端维护应用的状态,服务端维护资源的状态,但服务端不保存客户端状态。只有在每一次的请求中包含处理请求的信息,"会话"被客户端用作为应用状态进行跟踪,在服务端的超媒体的指引下发生变迁。服务端通过超媒体告诉客户端当前状态有哪些后续状态可以进入。 ps - 违反无 继续阅读 »
2015-11-21 Klaus Ma
Swarm on Mesos Overview Swarm API gets REST API request, and then create a task and put it into message queue. Swarm Cluster (registered as Mesos framework) gets offer from Mesos Swarm Cluster picks up a task from message queue Swarm Cluster calls Scheduler’s routine to gets target host Swarm Cluster calls Mesos 继续阅读 »