- 博客(23)
- 收藏
- 关注
转载 基于计算机视觉的棋盘图像识别
我们利用计算机视觉技术和卷积神经网络(CNN)为这个项目创建分类算法,并确定棋子在棋盘上的位置。最终的应用程序会保存整个图像并可视化的表现出来,同时输出棋盘的2D图像以查看结果。01. 数据我们对该项目的数据集有很高的要求,因为它最终会影响我们的实验结果。我们在网上能找到的国际象棋数据集是使用不同的国际象棋集、不同的摄影机拍摄得到的,这导致我们创建了自己的数据集。我使用国际象棋和摄像机(GoPro Hero6 Black以“第一人称视角”角度)生成了自定义数据集,这使我的模型更加精确。该数据集包含2406
2021-02-01 22:29:13 225
转载 【遇见Doris】基于Doris的有道精品课数据中台建设实践
我们本次想要和大家分享一下有道精品课数据中台的架构演进过程,以及Doris作为一个MPP分析型数据库是如何为不断增长的业务体量提供有效支撑并进行数据赋能的。本文以我们在实时数仓选型的经验为切入点,进一步着重分享使用Doris过程中遇到的问题以及我们针对这些问题所做出的调整和优化。1 背景1.1 业务场景根据业务需求,目前有道精品课的数据层架构上可分为离线和实时两部分。 离线系统主要处理埋点相关数据,采用批处理的方式定时计算。而实时流数据主要来源于各个业务系统实时产生的数据流以及数据库的变更日志,需
2021-02-01 18:54:09 375
转载 为什么大头书老是看不进去?
当时看《Effective Java》、《深入理解java虚拟机》全都一脸懵,更别说那些黑皮书了…所以我就不知道怎么入手,于是乎我打开电脑,打开多玩盒子(没错那时候盒子还在),打开了 LOL。那时候还不需要用书来垫显示器,所以书就在柜子里不见天日了。就这样浑浑噩噩地走上职场,经过了一段时间的 CRUD 发现自己真的太菜了,稍微出了点问题,如果搜索引擎搜不到就没半点头绪。真的一个 BUG 修一天,每次只能去请教别人,一次两次还好,这天天的我自己都厌恶自己,何况别人。所以我又打算开始学习,这一学就学到
2021-01-31 18:29:18 215
转载 负载均衡浅析
前言负载均衡这个概念在我们工作中经常被提及到,因为纵观我们系统的整个链路层,每层都会用到负载均衡,从接入层,服务层,到最后的数据层,当然还有MQ,分布式缓存等等都会存在一些负载均衡的思路在里面;给负载均衡做一个简短的定义:就是将请求分摊到多个操作单元上进行执行;其实就是一种分而治之的思想,面对高并发的情况下,这是一种非常行之有效的方法。核心功能上面简短的定义中我们大致可以看到两个内容:将请求分发,操作单元;其实就是控制器+执行器模式、Master+Worker模式等等,是不是很熟悉;当然一个成熟的负载
2021-01-31 16:08:52 190
原创 由两个问题引发的对GaussDB(DWS)负载均衡的思考
对于业务应用或者用户来说,他们发生请求给CN,CN解析并生成执行计划,交给DN去执行,执行后再由CN汇总将数据返回给业务用户或者业务应用。这个过程是容易理解的,本次我们重点关注的是站在CN前面的LVS+KeepAlived。现在的问题是:CN的返回结果是否会经过LVS,然后再返回给前端应用?如果经过LVS,那么,LVS会不会成为单点瓶颈?带着这两个问题我们探究一下LVS和KeepAlived的原理。LVS是什么?LVS是Linux Virtual Server的简称,也就是Linux虚拟服务器,
2021-01-30 22:11:39 194
原创 趣店容器进化史
简介趣店的容器化进程经历过三个里程碑:docker、单集群脚本化管理、多集群平台化管理。为了兼顾日常业务的需求开发,每一个里程均是由小部分人主导推动,由点及面地进行推广,并通过在小范围的试错中寻找最适合趣店业务场景的容器化方案。容器化为趣店的服务隔离及服务器统一化管理提供了基础条件,并且通过容器化迁移为趣店每月节省至少10万元服务器费用。(由于迁移工作以PHP服务作为试点,因此本文中的案例亦是以PHP为主)趣店容器进化史快速预览图Docker作为容器化推进的第一阶段,此阶段由开发主导,推广开发及测
2021-01-30 22:05:26 215
原创 数据库高可用架构了解一下
看多了应用服务的高可用架构,我们来看看数据库的高可用吧。数据存储高可用的方案本质都是通过将数据复制到多个存储设备,通过数据冗余的方式来实现高可用。常见的高可用架构有主备、主从、主主、集群、分区等,接下来我们聊聊每种架构的优缺点。整体架构简单,几乎所有的数据库都提供了主备复制的功能,例如Mysql、Oracle、MongoDB等。在这种架构中备库主要承担数据备份的作用,不参与实际业务读写操作,如果把备机改成主机需要人工操作。优缺点分析主备架构的优点友链交易就是简单,具体表现有:对于客户端来说,不需要
2021-01-29 18:08:23 182
原创 开发中遇到的时间类型bug
先根据错误的原因分个类系统存储本身限制。最经典当属千年虫时区问题。目前常见的话,使用容器时默认时区是美国的,直接使用会出现。服务器时间未同步。这样的bug,不常见,但项目做多了,还是有几率碰见…开发人员使用不当。 代码bug…系统设计问题导致以2038举例来说,时间是按照1970年1月1日起至所存储日期过去了多少秒来计算的。这个数值是在系统里用32位来表示的,并且有正负。那么 1970年 + 2^31秒(约68年) 就是这个系统友链交易最终支持的时间,超过就变成负数。比特币中的数值无正负,所以能
2021-01-29 17:49:49 498
原创 有意思的 Node.js 内存泄漏问题
Node.js 使用的是 V8 引擎,会自动进行垃圾回收(Garbage Collection,GC),因而写代码的时候不需要像 C/C++ 一样手动分配、释放内存空间,方便不少,不过仍然需要注意内存的使用,避免造成内存泄漏(Memory Leak)。内存泄漏往往非常隐蔽,例如下面这段代码你能看出来是哪儿里有问题吗?let theThing = null;let replaceThing = function() {const newThing = theThing;const unused =
2021-01-28 22:11:24 324
原创 JVM 判断对象已死,实践验证GC回收
经过了风风雨雨,看过了男男女女。时间经过的岁月就没有永恒不变的!在这趟车上有人下、有人上,外在别人给你点评的标签、留下的烙印,都只是这趟车上的故事。只有个人成长了、积累了、沉淀了,才有机会当自己的司机。可能某个年龄段的你还看不懂,但如果某天你不那么忙了,要思考思考自己的路、自己的脚步。看看这些是不是你想要的,如果都是你想要的,为什么你看起来不开心?好!加油,走向你想成为的自己!没有看到实际的例子,往往就很难让理科生接受这类知识。我自己也一样,最好是让我看得见。代码是对数学逻辑的具体实现,没有实现过程
2021-01-28 20:50:45 140
原创 20年前和现在-为什么程序员越来越累
内卷万物都可内卷。20年前很缺IT人员,只有会写ASP,JSP,PHP就能入行,如果你掌握EJB,那就是非常不得了了。工作到25岁就能当项目经理,28岁就能成为副总也是常态。就没有看到过30岁的程序员。以我刚开始上班的那个公司说,25岁是副总,另外一个年级也大点,29岁的副总。 现在则不一样,每年的毕业生数以百万计,25岁大家刚研究生毕业,工作3年天赋+运气加持,也最多是个小组领导。现在40岁的程序员也常见,我的前辈47了还在写代码,而我今天43了,也仍然还在写代码,我虽有心带领后浪,但实际上也知道会被后
2021-01-27 18:08:25 242 2
原创 【开源】我和 JAP(JA Plus) 的故事
程序员的故事如此简单之绕不过去的开源情结我们准备做一件伟大的事,也可以说是一件真真正正普惠的事。絮是的,你没有看错,就是“絮”而非“序”,请允许我絮叨二三。我们即将要做的,我们认为是一件伟大的事,也可以说是一件真真正正普惠的事。我们要开发一款真真正正国产的并且未来将会走向国际的完全开源的产品 - Just Auth Plus(以下简称 “JAP”)。JAP 是 JustAuth(以下简称 “JA”) 的升级版。立项之初,我和我的合伙人之间曾有过激烈的意识层面的碰撞,碰撞的根源就在于开源和商业化之
2021-01-27 17:45:43 789
原创 纯前端实现一键生成二维码,打开新页面展示二维码
如何实现这个需求呢首先我们需要生成二维码,而且要打开一个新的页面展示,那么我们需要img标签来展示图片的载体,那么生成图片src必不可少的。无论我们的项目是spa,还是多页面应用,我们这里都要用base64储存图片的信息。所以需要把生成的二维码转化成base64。接下来让我们整理一下思路。梳理具体思路第一步:我们需要将目标二维码链接生成二维码。第二步:将上一步生成的二维码转化成base64格式url,并保存url。第三步:打开新页面,获取保存的url,展示生成的二维码。1 引入arale-qrco
2021-01-26 16:37:50 1031
原创 Python OpenCV 图像处理之图像直方图,取经之旅第 23 天
基础知识铺垫截止到本篇博客,已经第二次听到直方图这个概念了,有必要将其搞懂。图像直方图(histogram)是图像统计学特征,用来统计像素值出现的频次,常用在分析图像的基本特征。创建直方图一般分为两个步骤:统计数据绘制直方图直方图的定义横坐标:图像中各个像素点的灰度级纵坐标:该灰度级的像素个数绘制直方图需要 matplotlib 库,这个需要自行安装一下。matplotlib 中 pyplot 绘制直方图在 pyplot 中提供了域名交易一个绘制直方图的函数,名称为 hist。函数原
2021-01-26 16:20:59 200
原创 Javascript对象创建模式
Javascript有多种创建对象的方式,新手和老手都可能感到不知所措,不确定应该使用哪种方式。文本将介绍常见的对象常见模式和最佳的实践。对象字面量:Object Literals创建对象最简单的方式就是对象字面量。Javascript总是吹嘘能够“无中生有”地创建对象——不需要类、不需要模板、不需要原型——just poof!,一个有方法和数据的对象就出现了。var o = {x: 42,y: 3.14,f: function() {},g: function() {}};缺点如果需要
2021-01-25 20:09:22 153
原创 Java函数式编程-4.lambda表达式排序
1.lambda表达式排序我们首先看几个比较常见的排序例子,基本数据类型的排序List list = Arrays.asList(1,3,2,5,4);list.sort(Comparator.naturalOrder());System.out.println(list);list.sort(Comparator.reverseOrder());System.out.println(list);输出结果:[1, 2, 3, 4, 5][5, 4, 3, 2, 1]我们可以看到执行结果
2021-01-25 19:18:04 516 1
原创 数据库高可用架构了解一下
数据存储高可用的方案本质都是通过将数据复制到多个存储设备,通过数据冗余的方式来实现高可用。常见的高可用架构有主备、主从、主主、集群、分区等,接下来我们聊聊每种架构的优缺点。整体架构简单,几乎所有的数据库都提供了主备复制的功能,例如Mysql、Oracle、MongoDB等。在这种架构中备库主要承担数据备份的作用,不参与实际业务读写操作,如果把备机改成主机需要人工操作。优缺点分析主备架构的优点就是简单,具体表现有:对于客户端网站交易来说,不需要感知备机的存在,即使灾难恢复后,原来的备机被人工干预修改为
2021-01-24 20:33:01 195
原创 Spring Boot 快速迁移至 Quarkus
Quarkus 是一个目前非常火的 Java 应用开发框架,定位是轻量级的微服务框架。,Quarkus 提供了优秀的容器化整合能力,相较于传统开发框架(Spring Boot)有着更快的启动速度、更小的内存消耗、更短的服务响应。本文将演示将 SpringBoot 迁移至 QuarkusSpring Boot 示例程序使用 JPA 完成 数据库的增删改查操作,基础代码如下maven 依赖org.springframework.bootspring-boot-starter-data-jpaorg
2021-01-24 19:59:38 377
原创 一文读懂 Serverless,将配置化思想复用到平台系统中
在 SaaS 领域 Salesforce 是佼佼者,其 CRM 的概念已经扩展到了 Marketing、Sales、Service 等领域。那么 Salesforce 靠什么变成了这三个行业的解决方案呢?得益于 Salesforce 强大的 aPaaS 平台。ISV、内部实施、客户均可以从自己的维度基于 aPaaS 平台构建自己的行业,实现业务定制,甚至是行业定制。因为在此之前只有在 Sales 方向有专门的 SaaS 产品,而 Marketing 和 Service 都是由自己的 ISV 在各自行业的解
2021-01-23 20:33:51 150
原创 什么是真正的云原生?
什么是真正的云原生?你好!让我们先回顾云原生的由来。云计算兴起之后,以 Docker 为代表的容器浪潮,席卷业界,以 DevOps 和标准化交付而广受青睐。在此背景下,Google 创造性地提出了云原生的概念,并发布了开源编排工具 Kubernetes,从统一部署和标准化的角度切入,其后更成立了 CNCF 基金会,成功地杀出了一片天地。2020 年 12 月,CNCF 大使 Ian Coldwater 在社交媒体上说:“Kubernetes 现已弃用了对 Docker 的支持。您需要注意这一点,并作好
2021-01-23 20:02:25 181
原创 高德地图驾车导航内存优化原理与实战
背景根据Apple官方WWDC的回答,减少内存可以让用户体验到更快的启动速度,不会因为内存过大而导致Crash,可以让APP存活的更久。对于高德地图来说,根据线上数据的分析,内存过高会导致导航过程中系统强杀OOM。尤其区别于其他APP的地方是,一般APP只需要关注前台内存过高的系统强杀FOOM,高德地图有不少用户使用后台导航,所以也需要关注后台的内存过高导致的系统强杀BOOM,且后台强杀较前台强杀更为严重。为了提升用户体验,内存治理迫在眉睫。原理剖析OOMOOM是Out of Memory的缩写。
2021-01-22 20:46:52 895 1
原创 明星八卦大爆料120期|性格挺受争议小花经常撩男性?被传是盖的男星特别会来事?
宫斗王者小希以前傍过一个大佬,后来大佬倒台,小希就开始圈养小鲜肉,但是她对待小鲜肉可没那么温柔,有一次小鲜肉想拍戏,并且威胁小希,要是小希不帮自己介绍资源,就把两人的事捅出去,小希听了之后大怒,带人去把小狼狗一顿暴打,差点闹出人命,Z后小希扔下一些钱就走了,小狼狗从此以后再没敢招惹小希。2.某渣男很爱恶心人,有一次还把自己的内裤套到某个男星的头上,关键那条内裤还是穿过的,过后那个男星真的生气了,他还强词夺理地表示自己只是开个小玩笑而已,没必要那么在意……3.男明星花无缺,之前经常和女朋友在节目上秀恩爱,
2021-01-19 21:57:03 921 2
转载 ie主页被劫持怎么办 解决浏览器主页劫持方法
相信对于很多经常上网的朋友会发现自己的主页经常被各种网址大全恶意更改,而自己设定的主页没几天就不见了,那么遇到这种电脑ie被劫持的情况应该怎么办呢?很多网友应该都不太清楚应该怎么解决,那么下面小编就来告诉大家吧! 方法/步骤: 步骤一:如果网页被篡改成了你不喜欢的网站,首先你要做的就是把主页再改过来。先打开浏览器,在此我以IE9浏览器为例。点击浏览器右上角的设置按钮。 步骤二:在弹出的菜单中点击internet选项,进入浏览器设置。其他版本的浏览器的方法也类似,总之找到internet选项打开即
2021-01-15 21:29:03 1669
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人