1. 前言 大家好,我是安果! 考虑到 Python 性能及效率性,Python Web 端一直不温不火,JAVA 和 Golang 的微服务生态一直很繁荣,也被广泛用于企业级应用开发当中 ​本篇文章将介绍一款 Python 微服务框架:「 Nameko 」 2. Nameko 介绍 Nameko 是一款小巧、简洁的、异步通信方式的微服务架构 它采用 RabbitMQ 消息队列作为消息中间件,基于发布者、订阅者模式 其中,消费者与生产者基于 RPC 进行通讯 项目地址:https://githu…

2021年9月28日 0条评论 2点热度 阅读全文

Redis散列类型可以存储一组无序的键值对,它特别适用于存储一个对象数据。 > HSET fruit name apple price 7.6 origin china 3 > HGET fruit price "7.6" 本文分析Redis中散列类型以及其底层数据结构--字典的实现原理。 字典 Redis通常使用字典结构存储用户散列数据。 字典是Redis的重要数据结构。除了散列类型,Redis数据库也使用了字典结构。 Redis使用Hash表实现字典结构。分析Hash表,我们通常关注以下几个问题: …

2021年9月28日 0条评论 2点热度 阅读全文

前言:记录一个go新手第一次构建复杂开源库的经历。go虽然是新手,但是编程上还是有多年的经验,除了c/c++,用过IDEA能进行简单的java编程、甚至scala编程。所以最开始还是有点信心的。所以也有点急于求成。而整个过程比我想象的复杂。   一、准备 今天已经927周一了,昨天补国庆的班。 从上上周918周五开始就熟悉go语言最简单的hello程序。中间有个中秋。922周二下载开源库,有关loraserver的,有三个模块如下图:  最后几个数字表示当前生产环境上运行的版本号。当时先在win…

2021年9月28日 0条评论 2点热度 阅读全文

前言 在分布式系统中,由于redis分布式锁相对于更简单和高效,成为了分布式锁的首先,被我们用到了很多实际业务场景当中。 但不是说用了redis分布式锁,就可以高枕无忧了,如果没有用好或者用对,也会引来一些意想不到的问题。 今天我们就一起聊聊redis分布式锁的一些坑,给有需要的朋友一个参考。 1 非原子操作 使用redis的分布式锁,我们首先想到的可能是setNx命令。 if (jedis.setnx(lockKey, val) == 1) { jedis.expire(lockKey, timeout); } …

2021年9月28日 0条评论 2点热度 阅读全文

python实现一个简单三层神经网络的搭建(有代码)   废话不多说了,直接步入正题,一个完整的神经网络一般由三层构成:输入层,隐藏层(可以有多层)和输出层。本文所构建的神经网络隐藏层只有一层。一个神经网络主要由三部分构成(代码结构上):初始化,训练,和预测。首先我们先来初始化这个神经网络吧! 1.初始化 我们所要初始化的内容包括:神经网络每层上的神经元个数(这个是根据实际问题输入输出而得到的,我们将它设置为一个可自定义量)。 不同层间数据互相传送的权重值。 激活函数(模拟自然界的神经元,刺激信号需要达到一定的程度…

2021年9月28日 0条评论 2点热度 阅读全文

本系列是 我TM人傻了 系列第六期[捂脸],往期精彩回顾: 升级到Spring 5.3.x之后,GC次数急剧增加,我TM人傻了 这个大表走索引字段查询的 SQL 怎么就成全扫描了,我TM人傻了 获取异常信息里再出异常就找不到日志了,我TM人傻了 spring-data-redis 连接泄漏,我 TM 人傻了 Spring Cloud Gateway 没有链路信息,我 TM 人傻了 大家好,我又人傻了。这次的经验告诉我们,出来写代码偷的懒,迟早要还的。 问题现象与背景 昨晚我们的网关雪崩了一段时间,现象是: 1.不断…

2021年9月28日 0条评论 2点热度 阅读全文

前言 JDK 7u21以前只粗略的扫过一眼,一看使用了AnnotationInvocationHandler,就以为还是和 CC1 一样差不多的利用方式,但最近仔细看了下利用链发现事情并不简单~ 7u21 要求你能理解: TemplatesImpl 代码执行原理 动态代理是什么 AnnotationInvocationHandler 利用原理 其实7u21是对AnnotationInvocationHandler 的进一步挖掘。 调用链 HashSet.readObject() map.put(k,v)。(k为代理…

2021年9月28日 0条评论 2点热度 阅读全文

    代码规范是软件开发领域经久不衰的话题,几乎所有工程师在开发过程中都会遇到或思考过这一问题。而随着前端应用的大型化和复杂化,越来越多的前端团队也开始重视代码规范。同样,前段时间,笔者所在的团队也开展了一波开源治理,而其中代码规范就占据了很重要的一项。接下来的几篇文章,将会对JS代码规范、CSS规范、Git工作流规范以及文档规范进行详细的介绍~     系列文章:     前端规范之JS代码规范(ESLint + Prettier)   &n…

2021年9月28日 0条评论 2点热度 阅读全文

笔记/朱季谦 在写React前端逻辑时,经常遇到可以切换不同条件的列表查询功能,例如下边截图这样的,其实,这块代码基本都一个逻辑,可以一次性将实现过程记录下来,待以后再遇到时,直接根据笔记复用即可。 一、首先,是前端React页面代码,这类搜索框,一般都是放在Form表单当中,然后使用有前缀下拉框选项的Input组件,这类模式的组件是在Input组件当中实现一个addonBefore属性即可,如下代码: render () { let { getFieldDecorator } = this.props.form;…

2021年9月28日 0条评论 2点热度 阅读全文

什么是虚拟环境 我们在使用Python的时候,通常用pip来进行包管理。比如我们要安装一个叫requests的库,那么我们就会采用以下命令去安装: pip install requests 那你知道,这个requests被安装到哪里去了吗? 其实,这个requests库被安装到 Python安装目录/Lib/site-packages下面。要知道,site-packages是一个全局包路径。 啥意思呢?就是说,我安装的requests这个库对这台电脑的这个版本的Python都生效。 那这样会造成一个问题: 如果re…

2021年9月28日 0条评论 2点热度 阅读全文