DuQi_NKU DuQi_NKU / 15 天前

vavr:让你像写 Scala 一样写 Java

本文阅读时间大约7分钟。 Hystrix是Netflix开源的限流、熔断降级组件,去年发现Hystrix已经不再更新了,而在github主页上将我引导到了另一个替代项目——resilience4j,这个项目是基于Java 8开发的,并且只使用了vavr库,也就是我们今天要介绍的主角。 Lambda表达式 既然要谈vavr,那么先要谈为什么要使用vavr,vavr是为了增强Java的函数式编程体验的,那么这里先介绍下Java中的函数式编程。 Jav......

Java Scala vavr

开发者头条 开发者头条 / 15 天前

一键生成果照,程序员又出奇葩软件

感觉最近程序员届就没消停过,前段时间搞出了非常火的换脸的技术叫做Deepfake,简单说就是利用深度学习的技术在收集到足够数据的情况下,能把一个视频中的某个人物的脸完全换成另一个人的脸。这个技术一出来,饱受争议。 后来没多久,又是程序员,又是很针对性的,搞出来一个叫做原谅宝的App。这个程序员从无数个色情网站采集了100TB的数据,采集完了之后他还做了一件事情,把这些视频拿去跟微博之类的社交......

人工智能 Deepfake

LiveVideoStack LiveVideoStack / 15 天前

5G 时代是时候全面解决 TCP 的效率问题了

回顾过去一年工业界在实时网络方面的探索,大量的篇幅留给了基于UDP的SRT、QUIC等明星协议,包括Google以及国内的B站都有令人欣喜的实践。但不可否认TCP在整个互联网依然占据统治地位,UDP并非银弹。本文由LiveVideoStack对Cascade Range Networks CTO/联合创始人范醒哲的邮件采访整理而成,作为一名研究UDP和TCP十多年的老兵,范醒哲剖析了UDP与TCP的优势与不足,并预测了5G将带来的网络协议与应用变革。在Liv......

TCP 5G

老张 老张 / 15 天前

nmon2influxdb + grafana:服务监控可视化部署

在工作中,无论是定位线上问题,还是性能优化,都需要对前端、后台服务进行监控。而及时的获取监控数据,能更好的帮助技术人员排查定位问题。 前面的博客介绍过服务端监控工具:Nmon使用方法及利用easyNmon实时监控并生成HTML报告的相关内容。但相对来说,这两种方式效率较低。 这篇博客,介绍下基于Nmon二次开发的监控插件——nmon2influxdb+grafana,实现服务端监控实时可视化的内容。。。 一、下载安装 ......

监控 部署 可视化 Grafana nmon2influxdb

y277an y277an / 15 天前

详解并发下的 HashMap 以及 JDK 8 的优化

HashMap的数据结构HashMap在并发时出现的问题1.多线程put的时候可能导致元素丢失主要问题出在addEntry方法的new Entry (hash, key, value, e),如果两个线程都同时取得了e,则他们下一个元素都是e,然后赋值给table元素的时候有一个成功有一个丢失。 2.多线程put后可能导致get死循环造成死循环的原因是多线程进行put操作时,触发了HashMap的扩容(resize函数),出现链表的两个结点形成闭环,导致死循环。下图为J......

JDK 并发 HashMap

风来风往风伤(TiAmo) 风来风往风伤(TiAmo) / 16 天前

分享 Django + Linux + Uwsgi + Nginx 项目部署文档

Django+Linux+Uwsgi+Nginx项目部署文档 WSGI 在生产环境中使用WSGI作为python web的服务器 WSGI:全拼为Python Web服务器网关接口,Python Web服务器网关接口,是项目默认会生成一个wsgi.py文件,确定了设置模块,uWSGI实现了WSGI的所有接口,是一个快速,自我修复,开发人员和系统管理员友好的服务器,C语言编写,效率高 Nginx 使用nginx的的作用主要包括负载均衡,反向代理 项目通过Django+Uwsgi+Ngi......

Nginx Linux Python 部署 Django uWSGI

涯之叶 涯之叶 / 16 天前

带你学加密之 Base64

* 前两天,某OA的RCE在圈子里炒的风风火火,在被公开的PoC的请求数据中,有一种比较怪异的编码,后来被大佬们审计出来是厂商自定义码表的Base64。Base64是一种非常简单而且流行的编码方式,今天就带大家来实现一个口算Base64的小目标。 Base64基础Base64,顾名思义,就是基于大小写英文字母、数字,以及+和/共64个字符对任意字节数据进行表示的编码算法,通常用于文本协议中二进制数据传输的场景。 它的大家族......

安全 加密 Base64

闲鱼技术 闲鱼技术 / 16 天前

面向未来的黑科技:UI2CODE 闲鱼基于图片生成跨端代码

DEMO演示 一直以来,如何从‘视觉稿’精确的还原出对应的UI侧代码一直是端侧开发同学工作里消耗比较大的部分,一方面这部分的工作比较确定缺少技术深度,另一方面视觉设计师也需要投入大量的走查时间,有大量无谓的沟通和消耗。 闲鱼团队在去年做了一个很特别的黑科技基于图片直接翻译成对应的UI侧代码,具体完成的部分,我们有一个演示的视频。 选型背景 很多人会比较好奇,为什么我会坚持使用图片做为输......

深度学习 黑科技 闲鱼 UI2CODE 跨端

LuXugang LuXugang / 16 天前

Lucene 文档的增删改(中)

文档的增删改(中)在文档的增删改(上)中,我们介绍了应用示例并给出了流程图,本篇文章承接上文,就流程图的每个流程点展开介绍,如果篇幅过长又得拖到下一篇文档啦。 预备知识在介绍流程点前需要了解以下几个知识点,下文使用到的名称都是源码中的类名。 DocumentsWriterPerThread该类实现了将文档转化为索引文件的所有需要的功能,如果你之前看过两阶段生成索引文件之第一阶段,这篇文章中描述了一篇文档......

Java Lucene 文档

Tiny_熊 Tiny_熊 / 16 天前

解读 Libra Move:一种可编程资源语言

Facebook最近发表了许可链项目Libra,其中的最大亮点是Move语言。 下面我们从技术视角解读一下“Move: A Language With Programmable Resources”这篇白皮书,供大家参考。 为了便于理解,我们拿比特币、以太坊和