最近这几天在帮柠檬看她的APM系统要如何收集.Net运行时的各种事件, 这些事件包括线程开始, JIT执行, GC触发等等. .Net在windows上(NetFramework, CoreCLR)通过ETW(Event Tracing for Windows), 在linux上(CoreCLR)是通过LTTng跟踪事件. ETW的API设计已经被很多人诟病, 微软推出的类库krabsetw中直指ETW是最差的API并且把操作ETW的文件命名为噩梦.hpp. 而且这篇文章中, Casey Mur…
“昨天调好的API,怎么又挂了,竟然没有人发现?” “喂喂喂,你的API挂了,无法调用成功?哪里出问题了?” “这段时间的API数量越来越多了,有谁能好好理清下?” 现在服务端技术越来越讲究微服务化,模块也越来越多,如何管理好这些服务,保证他们的可用是一个庞大的工程.如果我们没有对API接口进行监控,不能及时知道它的状况,等到用户反馈时,才去进行修改,不知道会影响多少用户.如果是涉及交易类的产品,那损失更是无法估量.同时,一旦出现这类接口异常,排查过程可能需要耗费大量的时间和沟通成本. 今天就来…
本文为授权译文.希望查看原文的同学请戳链接:https://hackernoon.com/restful-api-design-step-by-step-guide-2f2c9f9fcdbf 对于我们开发者来说,设计与实现REST API似乎已经成为了我们的日常生活.API现在已经成为了系统间互通的预设方式.AMAZON就是一个有效的使用API进行系统间沟通的最好的例子.在这篇文章中,我将重点讨论如何帮助你设计更好的API并避免一些常见的误区. 杰夫贝索斯的意志-亚麻的成功之路? 可能你已经大概…
像OpenAPI这样的API描述规范是一个关键工具,您应该尽可能地将其好好掌握,记录和执行API的工作由计算机和开发人员完成:OpenAPI 3.0现在允许额外的表现力,可以让机器为我们做更多有用的工作:OpenAPI可以驱动强大的测试自动化,它可以用于生成模拟,它甚至可以模拟进行本机绑定,从而让开发人员中更能分析出其复杂性:您可以利用OpenAPI的隐藏优势(如链接和回调)来使开发人员脱离文档而直接通过代码了解.本文主要介绍如何使用OPENAPI构建更智能的API. 无可置疑,如今已经是API…
许多.Net 程序员在使用Azure Management API的时候都选择参考微软官方示例,通过创建HttpWebRequest来创建. 或者自己创建类库来封装这些API,使之调用起来更加方便. 其实微软已经存在着这么一个已经封装好的类库了,不过由于这个类库并没有任何官方文档来对其进行说明,所以一直没有太多程序员想到去用它,这就是WindowsAzure.ServiceManagement.Client 类库. 要想使用这个类库,首先我们需要获取它, 目前我知道的获取它最新版本的方法是 1,…
Node.js是JavaScript基础上发展起来的语言,所以前端开发者应该天生就会一点.一般我们会用它来做CLI工具或者Web服务器,做Web服务器也有很多成熟的框架,比如Express和Koa.但是Express和Koa都是对Node.js原生API的封装,所以其实不借助任何框架,只用原生API我们也能写一个Web服务器出来.本文要讲的就是不借助框架,只用原生API怎么写一个Web服务器.因为在我的计划中,后面会写Express和Koa的源码解析,他们都是使用原生API来实现的.所以本文其实…
DELPHI下API简述 http://zero.cnbct.org/show.asp?id=144 auxGetDevCaps API 获取附属设备容量 auxGetNumDevs API 返回附属设备数量 auxGetVolume API 获取当前卷设置 auxOutMessage API 向输出设备发送消息 auxSetVolume API 设置附属设备卷 AbortDoc API 终止一项打印作业 AbortPath API 终止或取消DC中的一切路径 AbortPrinter API…
Android应用程序是用Java编程语言编写的.Android SDK工具把应用程序的代码.数据和资源文件一起编译到一个Android程序包中(这个程序包是以.apk为后缀的归档文件),一个Android应用程序就是一个单独.apk文件中的所有内容,并且Android设备使用这个文件来安装应用程序. 安装在设备上的每个Android应用程序都生活在它们自己的安全沙箱中: 1.       Android操作系统一个多用户的Linux系统,在这个系统中每个应用程序都是一个不同的用户. 2.   …
前言 一切就绪,开始规划API,这里在规划前对API进行了一次分类:短期API.长期API 首先申明下,这个是在实际框架演变过程中自创的一个概念,其它混合框架可能也会有这个概念,但应该是会在原生底层来实现,而不是前端实现.. 而这里由于是前端驱动,所以相比其它混合框架,前端多了一个处理引擎(包括多平台适配,API处理等等) 划分的凭据 根据API回调的实际执行次数来划分,执行一次自动回收的是短期API,可以执行多次的是长期API 譬如,短期回调包括: ui alert,toast等等 page…
对于MyBatis的学习而言,最好去MyBatis的官方文档:http://www.mybatis.org/mybatis-3/zh/index.html 对于语言的学习而言,马上上手去编程,多多练习是最好的办法.J Java API 既然你已经知道如何配置 MyBatis 和创建映射文件,你就已经准备好来提升技能了. MyBatis 的 Java API 就是你收获你所做的努力的地方.正如你即将看到的,和 JDBC 相比, MyBatis 很大程度简化了你的代码而且保持简洁,很容易理解和维护.…