RPC框架实践之:Apache Thrift
RPC(Remote Procedure Call)即 远程过程调用,说的这么抽象,其实简化理解就是一个节点如何请求另一节点所提供的服务。在文章 微服务调用链追踪中心搭建 一文中模拟出来的调用链:ServiceA ---> ServiceB ---> ServiceC 就是一个…
利用Zipkin追踪Mysql数据库调用链
在前面:微服务调用链追踪中心搭建 一文中我们利用Zipkin搭建了一个微服务调用链的追踪中心,并且模拟了微服务调用的实验场景。利用Zipkin的库Brave,我们可以收集一个客户端请求从发出到被响应 经历了哪些组件、哪些微服务、请求总时长、每个组件所花时长 等信息。 本文将讲述…
如何写一手漂亮的模型:面向对象编程的设计原则综述
选自Medium,机器之心编译。 大多数现代编程语言都支持并且鼓励面向对象编程(OOP)。即使我们最近似乎看到了一些偏离,因为人们开始使用不太受 OOP 影响的编程语言(例如 Go, Rust, Elixir, Elm, Scala),但是大多数还是具有面向对象的属性。我们在这…
Spring Boot应用监控实战
在前面:微服务调用链追踪中心搭建 一文中我们利用Zipkin搭建了一个微服务调用链的追踪中心,并且模拟了微服务调用的实验场景。利用Zipkin的库Brave,我们可以收集一个客户端请求从发出到被响应 经历了哪些组件、哪些微服务、请求总时长、每个组件所花时长 等信息。 本文将讲述…
Javascript运行机制
Event Loop(时间循环)处理异步任务,分为两种 宏任务(MacroTask)和微任务(MicroTask),在执行宏任务之前会先清空微任务。
微服务调用链追踪中心搭建
一个完整的微服务系统包含多个微服务单元,各个微服务子系统存在互相调用的情况,形成一个 调用链。一个客户端请求从发出到被响应 经历了哪些组件、哪些微服务、请求总时长、每个组件所花时长 等信息我们有必要了解和收集,以帮助我们定位性能瓶颈、进行性能调优,因此监控整个微服务架构的调用链…
Docker容器可视化监控中心搭建
动手了,动手了... 可以将其视为一个数据库服务,其确实用于存储数据。之所以选用该数据库,原因正如官网所说: 谷歌的cadvisor可以用于收集Docker容器的时序信息,包括容器运行过程中的资源使用情况和性能数据。 设置为true之后,容器内的root才拥有真正的root权限…
SpringBoot应用Docker化
当下web服务端开发中最火的名词中绝对有微服务的一席之地,其也成为当下互联网后端服务架构演进历程中最闪亮的技术之一。微服务的基本思想在于考虑围绕着业务领域组件来创建应用,这些应用可独立地进行开发、管理和加速。在分散的组件中使用微服务云架构和平台,使部署、管理和服务功能交付变得更…
从头开始了解PyTorch的简单实现
选自GitHub上,机器之心编译。 PyTorch使入门深度学习变得简单,即使你这方面的背景知识不太充足。至少,知道多层神经网络模型可视为由权重连接的节点图就是有帮助的,你可以基于前向和反向传播,利用优化过程(如梯度计算)从数据中估计权重。 必备知识:该教程假设读者熟悉Pyth…
一门面向所有人的人工智能公开课:MIT 6.S191,深度学习入门
文章选自Medium,机器之心编译。 MIT 6.S191 不仅仅是一门深度学习课程系列。在设计它时,我们希望做的更多。我们想要听众具备必须的实践技能,部署自己的深度学习模型,并将其应用到课程之外倍感兴奋、深受启发的问题上。 因次,在这门课程的教学中,我们选用了 TensorF…
SpringBoot优雅编码之:Lombok加持
Lombok 通过提供简单的语法注解形式来帮助简化消除一些必须有但显得很臃肿的 java 代码。典型的是对于 POJO对象的简化(如自动帮我们生成Setter和Getter等),有了Lombok的加持,开发人员可以免去很多重复且臃肿的操作,极大地提高java代码的信噪比,因此我…
94页论文综述卷积神经网络:从基础技术到研究前景
过去几年来,计算机视觉研究主要集中在卷积神经网络(常简称为 ConvNet 或 CNN)上。这些工作已经在广泛的分类和回归任务上实现了新的当前最佳表现。相对而言,尽管这些方法的历史可以追溯到多年前,但对这些系统得到出色结果的方式的理论理解还很滞后。事实上,当前计算机视觉领域的很…
从Brain.js到Mind,一文收录11个移动端Javascript机器学习库
文章选自blog.bitsrc.io,作者:Jonathan Saring,机器之心编译。 当我第一次和我们的 NLP 主要研究人员谈起这个概念时,她的原话是这样的。可能她是对的,但它也是一个非常有趣的概念,最近在 Javascript 领域得到了越来越多的关注。 在过去的一年…
利用ELK搭建Docker容器化应用日志中心
应用一旦容器化以后,需要考虑的就是如何采集位于Docker容器中的应用程序的打印日志供运维分析。典型的比如 SpringBoot应用的日志 收集。本文即将阐述如何利用ELK日志中心来收集容器化应用程序所产生的日志,并且可以用可视化的方式对日志进行查询与分析,其架构如下图所示:
TensorFlow发布面向JavaScript开发者的机器学习框架TensorFlow.js
在大会上午的 Keynote 中,谷歌大脑负责人 Jeff Dean、TensorFlow 总监 Rajat Monga 等人围绕 TensorFlow 做了表现、流行度等方面的介绍。 据介绍,在过去的两年中,TensorFlow 不断更新,不断改善,逐渐成为社区内最为流行的深…
《HelloGitHub》第 24 期
分享 GitHub 上有趣、入门级的开源项目。 这是一个面向编程新手、热爱编程、对开源社区感兴趣 人群的月刊,月刊的内容包括:各种编程语言的项目、让生活变得更美好的工具、书籍、学习笔记、教程等,这些开源项目大多都是非常容易上手,而且非常 Cool。主要是希望大家能动手用起来,加…
Spring Boot日志框架实践
Spring Boot使用Apache的Commons Logging作为内部的日志框架,其仅仅是一个日志接口,在实际应用中需要为该接口来指定相应的日志实现。 SpringBt默认的日志实现是Java Util Logging,是JDK自带的日志包,此外SpringBt当然也支…
利用K8S技术栈打造个人私有云(连载之:私有云客户端打造)
本人对前端其实不是很熟悉,也是最近才接触。前端技术栈还是非常庞大的,为了能够借助已经存在的轮子来造出一辆车,所以我选择了Vue.js进行实践。 我所理解的Vue.js就是和jQuery一样是一个前端框架,它的中心思想就是数据驱动,像远古时代的老前辈jQuery是结构驱动,什么意…
从结构到性能,一文概述XGBoost、Light GBM和CatBoost的同与不同
文章选自Medium,机器之心编译,原文点此跳转。 最近,我参加了 kaggle 竞赛 WIDS Datathon,并通过使用多种 boosting 算法,最终排名前十。从那时开始,我就对这些算法的内在工作原理非常好奇,包括调参及其优劣势,所以有了这篇文章。尽管最近几年神经网络…
Pipeline As Code With Jenkins2.0
Pipeline as Code是Jenkins 2.0版本的精华所在,是帮助Jenkins实现从CI到CD华丽转身的关键工具。 Pipeline的实现方式是一套Groovy DSL(类似Gradle),任何发布流程都可以表述为一段Groovy脚本,并且Jenkins支持从代码…