v8

go-kit 微服务 服务熔断(hystrix-go 实现)

烈酒焚心 提交于 2020-04-09 01:04:40
go-kit 微服务 服务熔断(hystrix-go 实现) 对客户端请求login方法添加熔断 Hystrix 在微服务架构中,每个服务都是相互关联的,比如我们下单服务和扣钱服务是分开的,现在扣钱服务出现的bug不能正常服务 Hystrix可以让我们在在微服务架构中对服务间的调用进行控制,加入一些调用延迟或者服务降级的容错机制。 Hystrix的设计原则 对依赖服务调用时出现的调用延迟和调用失败进行控制和容错保护 在复杂的分布式系统中,阻止某一个依赖服务的故障在整个系统中蔓延 提供fail-fast(快速失败)和快速恢复的支持 提供fallback优雅降级的支持 支持近实时的监控、报警以及运维操作 编写Hystrix类 import ( "errors" "github.com/afex/hystrix-go/hystrix" "sync" ) var config = hystrix.CommandConfig{ Timeout: 5000, //执行command的超时时间(毫秒) MaxConcurrentRequests: 8, //command的最大并发量 SleepWindow: 1000, //过多长时间,熔断器再次检测是否开启。单位毫秒 ErrorPercentThreshold: 30, //错误率

MacBook外置显卡eGPU折腾笔记

两盒软妹~` 提交于 2020-04-08 21:56:14
MacBook外置显卡eGPU折腾笔记 硬件选购 当今市场上个人电脑的独立显卡,基本上能选的只有NVIDIA和AMD了,如果你想买外置显卡来打游戏的话,NVIDIA和AMD的都可以,但如果是像我一样准备用来做深度学习加速的,那最好还是选择NVIDIA了。 另外,如果要用来做深度学习加速,一定要查看英伟达官方网站,必须是支持CUDA的显卡才行,因为现在大多数的深度学习框架,底层都是调用GPU的CUDA编程接口。 不过大家也不用担心需要多么昂贵的显卡,GeForce GTX 9XX,GeForce GTX 10XX的显卡基本上都是支持的,具体购买之前去官方网站再核实一下即可。 因为本文的经验来自于MacBook Pro,所以,以下着重介绍MacBook Pro安装、配置外置显卡的一些信息。Windows下依然也可以使用外置显卡的,而且性能损失更少。 电脑 对比较新的笔记本而言,要配置外置显卡,最佳的途径非Thunderbolt接口(也称雷电接口)莫属,这个接口一共分3代,从2016年以后的苹果笔记本电脑,包括MacBook Pro、MacBook上面配置的,都是第三代的雷电接口,这个接口速度极快,因此提供了扩展显卡的可能性,接口的形状与USB 3.1的形状一样,现在很多PC笔记本也配备了这个接口,但 一定要注意了,有些电脑上也有这个形状的接口,但并不是雷电3接口,而只是USB接口

Google Chrome 80.0.3987.149 官方正式版

我是研究僧i 提交于 2020-04-08 18:37:02
谷歌浏览器Google Chrome 80正式版例行更新,详细版本80.0.3987.149。Google Chrome浏览器,又称谷歌浏览器,采用Chromium内核,全球最受欢迎的免费网页浏览器,追求速度、隐私安全的网络浏览器。 新版变化 https://blog.google/products/chrome 2020-02-05 Chrome 80 - 调整第三方Cookie策略,加强网页登陆安全性; - 引入更多方便开发者的功能,主要包括以下方面: 1、在HTTPS下自动加载升级后的混合内容(音视频等)。如果无法重写网页内容中的URL,那么会在地址栏中出现“Not Secure”标记,并默认禁用HTTP音视频,只有混合类图片允许继续加载。 早前的Chrome 81开发版,若存在HTTP的混合图像内容无法重定向HTTPS的话,也会默认禁用。 2、引入SameSite cookie更严格的安全分类,只有HTTPS、且SameSite设置为None时才允许第三方调用Cookie。其实早在Chrome 51中,SamSite Cookie首次引入,其设计用来阻伪造的止跨站点Cookie请求。 3、更安静的消息通知。网页请求发送通知权限时,横幅或者弹窗通知会以更安静、更低调的方式呈现,而不再像原来那样在网页中间或顶部/底部占用空间。 4、标签分组,每组可配置个性化颜色。 5

Event Loop到底是什么鬼?

那年仲夏 提交于 2020-04-08 17:53:29
该文章是对Philip Roberts在JSConfEU演讲的意译和整理。如有误导,请放弃阅读。 原文 演讲视频 演讲视频 演讲前言 javascript程序员喜欢说各种高逼格的术语:“event-loop”,"non-blocking","callback","asynchronous","single-threaded"和“concurrency”等(译者注:确实如此,一些所谓的面试官在自己对这些概念一知半解的情况下也喜欢问这些概念)。 我们总是装出一胸有成竹的样子说着这样的话:“不要阻塞event loop”,"你要确保你的代码以60FPS(frames-per-second)的速度去运行",“你这么搞法肯定是不行啦,那个函数是一个异步执行的callback啊”。 如果你是像我一样的怂货,你肯定会点点头,表示十分认同的样子。尽管你也不知道他说得对不对,因为你不知道这些术语到底是啥意思。与此同时的事实是,找到一些讲述javascript如何被解释执行的好资料也是相对艰难的。(如今我花了18个月去做了这方面的研究),所以,我们一起学习一下吧。 在一些便利的可视化工具的帮助下,我们可以很直观地理解到javascript的运行时到底发生了什么。 演讲正文 大家好,感谢大家莅临side track(译者注:side track是啥?)。it is awesomen to see it

Node要领

痴心易碎 提交于 2020-04-06 18:56:42
Node是什么 Node 是一个 JavaScript 运行平台。特征:异步和事件驱动机制,还有它的标准库。 Node 的动力源来自 V8 JavaScript 引擎,是由服务于 Google Chrome 的 Chromium 项目组开发的。 V8 负责 JavaScript 代码的解释和执行。用 c++ 绑定层可将 libuv 和 v8 结合起来。 node 包含 v8 特性: shipping,staged,in progress 三组。 npm 要求 Node 项目所在的目录下有一个 package.json 文件。创建 package.json 文件的最简单方法使用 npm 。 node 程序主要分: web应用程序 命令行工具 后台程序 桌面程序 web应用程序:提供单页应用的简单程序,rest微服务和全栈的 web 应用。 mkdir example-project cd example-project npm init -y 核心模块: node 的核心模块就相当于其他语言的标准库,它们是编写服务器端 JavaScript 所需的工具。 事件模块是一个处理事件的小型库, node 的大多数 api 都是以它为基础来做的。 node 有文件系统库, fs,path , tcp 客户端和服务端库 net , http 库,域名解析库 dns ,测试的断言库 assert

了解javaScript秉性和特点,走出死记硬背面试题的禁锢,做一个技术人,将技术成为自己一个属性

。_饼干妹妹 提交于 2020-04-06 12:12:43
话说在前头(面试捷径说在后头) 最近一直从原理去理解js基础,发现自己收货颇丰。以前一触碰原理性解析的文章或者博客时一直很抵, 但是最近强行去了解到本质就感觉语言设计还是那么的清爽。一些规则和设计也是为了解决问题 高效的解决问题问题。 一门语言也是程序员的工具吧,使用好工具不仅仅只是要看懂说明书(api),应用语言api,一定要懂得这门语言的特点和秉性,这样使用起来就会收放自如,才能发挥它的最大的潜能。 知己知彼,融会贯通,无功胜有功(吹牛逼了) 比如: JS最开始纯解释性语言,js虚拟机的解析器将源码转编译成中间代码,之后直接使用解释器执行中间代码,然后直接输出结果。 js解析的原理都一样,但是也有好几种js虚拟机,他们之间也存在一些差异,苹果公司Safari的javaScriptCore虚拟机,firefox有TraceMonkey虚拟机,而Google则使用v8虚拟机 那V8是怎么执行js代码的呢? v8是混合编译执行和解释执行这两种手段,混合使用编译器和解释器的技术成为JIT(Just In Time)技术 所以我认为js是解释性语言,只是为了优化js运行速度,混合加入了编译器及时编译技术。《你不知道js》说js是门编译语言,有点歧义,不能够更好的说明现代js的核心原理。 MDN中则表达的很准确,感觉MDN才是学标准规范js的最佳地方: javaScript 是一种具有

[图]新版Edge获新功能:更轻松导入经典版Edge相关数据

不打扰是莪最后的温柔 提交于 2020-04-06 09:31:36
微软正不断改进基于Chromium的新版Edge浏览器,在最新的Canary通道版本中引入了一项非常重要的新功能, 能非常轻松的将经典版Edge的相关数据导入到新版Edge浏览器中。 访问: 微软中国官方商城 - Windows 在最新发布的Microsoft Edge Canary v83.0.473.0版本更新中,用户可以你可以前往 "edge://flags/#edge-legacy-import",在下拉菜单中选择 "启用"。 在启用之后,你需要按照下面的步骤将设置、书签等从经典版Edge浏览器导入到基于Chromium的新Edge浏览器中。 1.打开基于Chromium的Edge浏览器,进入 "设置">"配置文件">导入浏览器数据 2.选择经典版Microsoft Edge,然后选择书签和密码等项目。 3.现在点击导入,将它们导入到基于Chromium的Edge中。 默认情况下, 基于Chromium的新版Edge会导入经典版Edge的收藏夹或书签、保存的密码、搜索引擎、地址、支付信息、浏览记录、Cookies、主页、设置、打开的选项卡和扩展程序。 该功能目前只适用于 微软 Edge Canary,但我们预计很快就会推出到其他测试渠道。微软已经取消了Edge v82版本,所以我们预计微软会在基于Chromium的Edge的v83版本中加入这个功能。 新浪微博 QQ空间

nodejs环境安装

拟墨画扇 提交于 2020-03-30 04:27:02
Node.js是一个基于Chrome JavaScript运行时建立的平台, 用于方便地搭建响应速度快、易于扩展的网络应用。Node.js 使用事件驱动, 非阻塞I/O 模型而得以轻量和高效,非常适合在分布式设备上运行的数据密集型的实时应用。 V8引擎执行Javascript的速度非常快,性能非常好。 Node是一个Javascript运行环境(runtime)。实际上它是对Google V8引擎进行了封装。V8引 擎执行Javascript的速度非常快,性能非常好。Node对一些特殊用例进行了优化,提供了替代的API,使得V8在非浏览器环境下运行得更好。 我们采用官网下源码包的方式进行安装。下载地址:https://nodejs.org/download/release/v6.10.2/node-v6.10.2.tar.gz Node.js 就是运行在服务端的 JavaScript,是一个基于Chrome JavaScript 运行时建立的一个平台。可以以一个事件驱动I/O服务端JavaScript环境,基于Google的V8引擎,V8引擎执行Javascript的速度非常快,性能非常好。Node.js 就是运行在服务端的 JavaScript,是一个基于Chrome JavaScript 运行时建立的一个平台。可以以一个事件驱动I/O服务端JavaScript环境

nodejs的内存管理,垃圾回收机制

╄→尐↘猪︶ㄣ 提交于 2020-03-25 15:11:40
3 月,跳不动了?>>> 要点记录: 1、网页js、命令行工具, 快进快出的,即时内存泄露,无内存管理必要! 2、服务器端nodejs和其他正规语言一样存在内存泄露。 3、nodejs基于谷歌v8js引擎,速度很快,垃圾回收也是由v8维护的 4、通过查看源码可发现v8中用js使用内存的限制约为:64位-1.4G 32位 -0.7G。这是源于v8的垃圾回收机制的限制,可在node 后加 --max-old|new-space-size=xxx来改变内存限制 5、nodejs进程的内存占用:堆内内存+堆外内存=rss+swap+fs, 其中 v8申请和分配的为堆内内存,所有js实体都是通过堆来分配的。 process.memoryUsage() 可查看常驻内存rss,heapTotal总堆 内存,和已分配的堆内存heapUsed 非V8分配的内存为堆外内存,如 Buffer对象占据的内存,用在网络流和文件流中 os.totalmem os.freemem 可查看系统的总内存和可用 内存 6、v8的垃圾回收算法 统计学知识的应用,按对象存活时间将内存的垃圾回收进行不同的分代,对这些不同的分代分别实施不同的回收算法 v8中将内存主分为新生代 和 老生代 空间,前者存活时间短,后者较长或常驻 7、新生代中活对象较少,采用scavenge-cheney算法:将新生代一分为二,From ->To

基于三维GIS技术的公路交通数字孪生系统

ε祈祈猫儿з 提交于 2020-03-24 11:27:37
3 月,跳不动了?>>> 交通运输系统是四个现代化建设的重要保障,在“一带一路”倡议规划背景下,互联网+、智慧交通提升到国家新战略。智慧交通的基石是建立可映射物理世界的虚拟世界,因此大多数交通管理平台项目通过抽象建模构造二维电子地图,并在抽象模型上集成数据及分析工具,实现运营期信息化管理。随着设计、施工、运营全生命周期细化管理日益增长的需求,传统的交通地理信息(Geographic Informa-tion System-Transportation,GIS-T)系统的压力也随之增加。 交通基础设施数字化映射为 三维GIS 信息世界的技术方案是突破二维GIS-T系统局限的有效途径,其已成为交通信息化研究的热点课题,目前研究主要集中于建模、数据库协同、可视化分析。 (1)在建模方面,通过三维GIS平台场景中集成建筑信息模型(Building Information Modeling, BIM)软件创建的地物模型达到宏观和微观的信息表达是最直观的思路。实践发现,交通以线状工程为主,其结构复杂性远低于建筑工程,照搬建筑业BIM不可复用的手工建模方式具有高人力投人的特点,缺乏项目各生命周期出现的模型、选线变更高效应对手段。点云、倾斜摄影等基于机载激光雷达的标准数据(LIDAR Standard, LAS)雷达和图形学的建模方法十分先进但只适用于运营期,且模型单体化处理技术尚不成熟