2021 01-27

Java并发包源码学习系列:阻塞队列实现之ArrayBlockingQueue源码解析

目录 ArrayBlockingQueue概述 类图结构及重要字段 构造器 出队和入队操作 入队enqueue 出队dequeue 阻塞式操作 Etake()阻塞式获取 voidput(Ee)阻塞式插入 Epoll(timeout,unit)阻塞式超时获取 booleanoffer(e,timeout,unit)阻塞式超时插入 其他常规操作 booleanoffer(Ee) Epoll() Booleanremove(Objecto) 总结 参考阅读 系列传送门:

2021 01-27

使用注解的形式对token进行验证

目录 前言 设计思路 实现方案 注解及aop切面实现 token的加密生成及解析 总结 前言 现在很多系统都是都用上了springboot、springcloud,系统也偏向分布式部署、管理,最早的用户令牌方案:session、cookie已经不能够满足系统的需求,使用一些特殊操作完成令牌的生成及校验会造成更多的服务器开销及客户端开销,为此许多项目都使用上了token。 token的原理即为将一串加密字符,寄存在请求头中,随着请求头往返与前后端,以校验该访问是否有权限。 如果

2021 01-27

MySQL全面瓦解21(番外):一次深夜优化亿级数据分页的奇妙经历

背景 1月22号晚上10点半,下班后愉快的坐在在回家的地铁上,心里想着周末的生活怎么安排。 突然电话响了起来,一看是我们的一个开发同学,顿时紧张了起来,本周的版本已经发布过了,这时候打电话一般来说是线上出问题了。 果然,沟通的情况是线上的一个查询用户数据的接口被疯狂的失去理智般的调用,这个操作直接导致线上的MySql集群被拖慢了。 好吧,这问题算是严重了,下了地铁匆匆赶到家,开电脑,跟同事把Pinpoint上的慢查询日志捞出来。看到一个很奇怪的查询,如下 1POSTdomain/v1.0/mo

2021 01-27

使用remix实现给合约账户转账

实现内容:从remix上的虚拟账户上转账给自己编写的智能合约账户 前提基础:对solidity有一些基础了解,对以太坊的账户机制有一定了解。 账户 在以太坊中账户的唯一标识是地址(address)。 在solidity中即地址类型。但是地址类型也分为两种:address和addresspayable。地址类型最常用的成员变量有balance,即当前账户余额。具体成员变量可查看文档 而addresspayable和address相同,不过还具有成员transfer()和send()这样使得其可以

2021 01-27

COLMAP简易教程(命令行模式)

完整的multiviewstereopipeline会有以下步骤 structurefrommotion(SfM)==>cameraparameters,sparsepointcloud multiviewstereo(MVS)==>depthmap,densepointcloud surfacereconstruction(SR)==>poissonordelaunyreconstruction,mesh texturemapping(TM)==>getmeshwit

2021 01-27

ES数据库高可用配置

ES高可用集群部署 1、ES高可用架构图 2、创建ES用户组 1.Elasticsearch不能在root用户下启动,我们需要在三台机器上分创建一个普通用户#创建elastic用户 useraddelastic 设置用户密码 passwdelastic 测试服务器密码设置的是 abc123!@# 切换到elastic用户 suelastic 分别在三台机器上的/home/elastic/目录下分别创建data、logs文件夹。 cd/home/elastic/ mkdirdata

2021 01-27

CTO也糊涂的常用术语:功能模块、业务架构、用户需求、文档……

功能模块、业务架构、需求分析、用户需求、系统分析、功能设计、详细设计、文档、业务、技术……很多被随口使用的名词,其实是含糊甚至错误的。 到底含糊在哪里,错误在哪里,不仅仅是新手软件开发人员糊涂,许多入行多年的老手也一样。虽然很多老手功成名就,挂着CTO、总架构师等研发线的最高头衔,但是心里对这些概念也是一团浆糊。 可能有的人会说,不会吧,这些牛人带团队做出了让公司赚钱的系统,怎么会不清楚呢,只不过表达出来和你的表达不同而已吧?我只能很诚恳地再说一遍:很多“牛人”真的不清楚。当然,搞不清楚不妨碍做

2021 01-27

有赞个性化推荐能力的演进与实践

日前,由又拍云举办的大数据与AI技术实践|OpenTalk杭州站沙龙在杭州西溪科创园顺利举办。本次活动邀请了有赞、个推、方得智能、又拍云等公司核心技术开发者,现场分享各自领域的大数据技术经验和心得。以下内容整理自有赞数据智能团队负责人尹越现场分享: 尹越,有赞数据智能团队负责人,与团队成员一起承担有赞搜索、推荐、客服机器人、智慧零售、风控、会员营销等多场景的数智化建设的职责。 大家好,我是来自有赞的尹越,今天主要和大家分享有赞数据智能团队在个性化推荐能力的演进与实践。我将首先介绍有赞公司和我们团

2021 01-27

Mybatis plus通用字段自动填充的最佳实践总结

在进行持久层数据维护(新增或修改)的时候,我们通常需要记录一些非业务字段,比如:create_time、update_time、update_by、create_by等用来维护数据记录的创建时间、修改时间、修改人、创建人等信息。通常情况下我们需要对这些字段进行手动赋值。赋值的过程也比较冗余,都是重复操作。 通常是为create_time赋值为系统的当前时间、update_time赋值为系统修改操作执行时的当前时间。 create_by(创建人)、update_by(修改人)赋值为当前的登录用户

2021 01-27

[微信小程序]字体文件,字体图标(.ttf,.woff,woff2)等无法显示问题

一.背景 项目引用了第三方UI框架Vant-weapp,但是前几天Vant的cdn被运营商封禁,导致van-icon无法使用。 有赞官方在Github上给出了在小程序app.wxss上添加以下代码的临时解决方案: 1@font-face{ 2font-weight:normal; 3font-family:'vant-icon-temp'; 4font-style:normal; 5font-display:auto; 6src:url('https://img.yzcdn.cn/vant/v