-
细说Python的Lambda函数用法,建议收藏
所属栏目:[优化] 日期:2019-09-04 热度:95
在Python中有两种函数,一种是def定义的函数,另一种是lambda函数,也就是大家常说的匿名函数。今天我就和大家聊聊lambda函数,在Python编程中,大家习惯将其称为表达式。 1.为什么要用lambda函数? 先举一个例子:将一个列表里的每个元素都平方。 先用def[详细]
-
当JSON解析遇上了泛型该如何处理泛型擦除问题
所属栏目:[优化] 日期:2019-09-04 热度:104
JSON是一种轻量级的数据交换格式,简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言,常被用于实际项目中。Java生态圈中有很多处理JSON格式化的类库,如json-lib框架、Jackson、Google的Gson、阿里的FastJson等,通过这些类库可以使我们更加简便地处[详细]
-
使用 Python 函数进行模块化
所属栏目:[优化] 日期:2019-09-02 热度:113
你是否对函数、类、方法、库和模块等花哨的编程术语感到困惑?你是否在与变量作用域斗争?无论你是自学成才的还是经过正式培训的程序员,代码的模块化都会令人困惑。但是类和库鼓励模块化代码,因为模块化代码意味着只需构建一个多用途代码块集合,就可以在[详细]
-
Redis基本类型及其数据结构
所属栏目:[优化] 日期:2019-09-02 热度:86
以前在使用Redis的时候,只是简单地使用它提供的基本数据类型和接口,并没有深入研究它底层的数据结构。最近打算重新学习梳理一下Redis方面的知识,所以打算从介绍Redis的基本类型及其数据结构入手。 redisObject Redis的key是顶层模型,它的value是扁平化[详细]
-
MySQL 进行 Docker 容器化之体验与感悟
所属栏目:[优化] 日期:2019-09-02 热度:136
原则 Docker 的使用原则是所有容器化的应用程序都应该是无状态的 ,即容器内部只跑业务逻辑,容器应用的所有配置文件、日志文件和持久化数据 都应该挂载到宿主机文件系统,不应该存储在容器内部,以免容器被误删或自身出现问题导致数据丢失。 MySQL 容器化[详细]
-
用Cython加速Python代码,速度溜到飞起
所属栏目:[优化] 日期:2019-09-02 热度:112
介绍 如果你曾用Python编写代码,那么你可能花了更多的时间等待某些代码块的执行,而不是你想要的。虽然有一些方法可以使您的代码更有效,但它很可能仍然比C代码慢。这主要归结为Python是一种动态编程语言,并将许多东西移动到C语言编译期间处理的运行时。[详细]
-
详解JVM内存布局及GC原理,值得收藏
所属栏目:[优化] 日期:2019-09-02 热度:148
java发展历史上出现过很多垃圾回收器,各有各的适应场景,不仅仅是开发,作为运维也需要对这方面有一定的掌握,今天简单介绍一下java的内存布局以及各种垃圾回收器的原理。 JVM内存布局 JVM从概念上大致分为6个(逻辑)区域: 这6块区域按是否被线程共享,可[详细]
-
SpringBoot 处理异常的几种常见姿势
所属栏目:[优化] 日期:2019-08-31 热度:96
一、使用 @ControllerAdvice 和 @ExceptionHandler 处理全局异常 这是目前很常用的一种方式,非常推荐。测试代码中用到了 Junit 5,如果你新建项目验证下面的代码的话,记得添加上相关依赖。 1. 新建异常信息实体类 非必要的类,主要用于包装异常信息。 sr[详细]
-
向攻击者学习?密码保护,你需要这样的反套路!
所属栏目:[优化] 日期:2019-08-31 热度:133
只要你是人类,肯定不可避免反复用过某一两个密码。实际上,大部分年龄介于 18-65 岁之间的网民都这样做过,并且越是年轻的网民,越有可能为自己的所有帐户使用同一个密码。 大家都知道这种做法不好,而且大部分网民都知道怎样创建足够强的密码:应该包含[详细]
-
案例详解:理解Python中的“解析式”
所属栏目:[优化] 日期:2019-08-31 热度:126
本篇文章将详细介绍解析式的基本要素及其各种形式。 Python中的解析式 解析式是允许在其他序列中构建序列的结构。Python 2.0介绍了列表解析式的概念,Python 3.0中进一步介绍了字典和集合解析式。 Pyhon中的解析式类型 为什么解析式如此强大?本文将通过一[详细]
-
用单库自增键来生成id了,后期怎么分库?哎,这个坑大!
所属栏目:[优化] 日期:2019-08-31 热度:194
星球水友写代码的提问: 沈老师,我们现在用户中心是单库单表,uid使用数据库自增主键,uid被很多业务关联,不能变化。 现在用户中心数据量逐步变大,有分库需求了,如何由单库升级为多库,保持历史uid不变,并且新生成的数据不冲突,有什么好办法么? ==问[详细]
-
TypeScript VS JavaScript 深度对比
所属栏目:[优化] 日期:2019-08-31 热度:89
TypeScript 和 JavaScript 是目前项目开发中较为流行的两种脚本语言,我们已经熟知 TypeScript 是 JavaScript 的一个超集,但是 TypeScript 与 JavaScript 之间又有什么样的区别呢?在选择开发语言时,又该如何抉择呢? 本文将会深入对比这两种语言,讨论两[详细]
-
架构选型之Nodejs与Java
所属栏目:[优化] 日期:2019-08-31 热度:194
前言: 身边越来越多的同事谈论Nodejs,谈其异步IO、事件回调、前后台统一一门语言,创业的朋友的第一个创业项目也选择了Nodejs,期望能够使用一种语言节省成本快速完成需求开发。与其他项目组的同事聊项目选型Java时被他们嘲笑了一把,怎么这么不与时俱进[详细]
-
网络管理员的5款网络配置管理工具,收藏了
所属栏目:[优化] 日期:2019-08-31 热度:194
企业网络的增速往往超出网络管理员的预期。一方面,这种增长反映了网络连接性的能力,而另一方面,它提出了管理这种复杂性势必需要选择正确工具的需求。在不同位置管理数百个交换机,路由器,设备和控制器的配置是十分具有挑战性的。即使对你的分布式网络[详细]
-
推动 IT 转型的三大法宝
所属栏目:[优化] 日期:2019-08-31 热度:77
当前,数字时代为中国及其他亚太地区的企业带来了巨大机遇:成功实现数字化转型的企业,能够提升其在全球市场的竞争力。IDC 预测,今年亚太地区的企业在数字化转型上的开支将超过 3,758 亿美元,中国将成为整个亚太地区较大的数字化转型市场,2019 年支出[详细]
-
给中级Python开发者的13个练手项目,适合你不?
所属栏目:[优化] 日期:2019-08-31 热度:54
Web 项目设计 内容聚合器(Content Aggregator) 1. 技术细节 该项目设计的主要目标是聚合内容。首先,我们需要知道内容聚合器从哪些站点获取内容。然后,使用请求库来发送 HTTP 请求,并使用 BeautifulSoup 解析和抓取站点的必要内容。 该应用程序可以将其[详细]
-
并发扣款,如何保证数据的一致性?
所属栏目:[优化] 日期:2019-08-31 热度:90
继续解答星球水友提问。 扣款的业务场景是怎样的? 用户购买商品的过程中,要对余额进行查询与修改,大致的业务流程如下:第一步,从数据库查询用户现有余额: SELECTmoneyFROMt_yueWHEREuid=$uid; 不妨设查询出来的$old_money=100元。 第二步,业务层实施[详细]
-
京东到家订单查询服务演进
所属栏目:[优化] 日期:2019-08-31 热度:68
背景 京东到家订单中心系统业务中,无论是外部商家的订单生产,或是内部上下游系统的依赖,订单查询的调用量都非常大,造成了订单数据读多写少的情况。京东到家的订单数据存储在Mysql中,但显然只通过DB来支撑大量的查询是不可取的,同时对于一些复杂的查[详细]
-
微服务的三种通信方法
所属栏目:[优化] 日期:2019-08-31 热度:190
在微服务架构的世界中,我们通过一系列服务构建应用。集合中的每项服务都符合以下标准: 松散耦合 可维护和可测试 可以独立部署 微服务架构中的每个服务都解决了应用中的业务问题,或至少支持一个。一个团队对应用中的一个或多个服务负责。 微服务架构可以[详细]
-
在你崩溃之前,这8种做法会让React应用程序先崩溃
所属栏目:[优化] 日期:2019-08-30 热度:61
React库的优势非常明显:创建复杂的交互用户界面非常简单。最大的特点是可以在不破坏其他组件的情况下,将组件直接组合在一起。即使是Facebook、Instagram、Pinterest这样的社交媒体巨头也大量使用React,同时通过谷歌Maps这样的大型API创造无缝的用户体验[详细]
-
处理亿级数据的“定时任务”,如何缩短执行时间?
所属栏目:[优化] 日期:2019-08-30 热度:55
继续答水友提问。 问题抽象: 用户会员系统; 用户会有分数流水,每个月要做一次分数统计,对不同分数等级的会员做不同业务处理; 数据假设: 假设用户在100w级别; 假设用户日均1条流水,也就是说日增流水数据量在100W级别,月新增流水在3kW级别,3个月流水[详细]
-
Kali Linux 下10个常用渗透工具
所属栏目:[优化] 日期:2019-08-30 热度:148
1、Nmap Nmap Nmap(即 网络映射器)是 Kali Linux 上信息收集工具之一。换句话说,它可以获取有关主机的信息:其 IP 地址、操作系统检测以及网络安全的详细信息(如开放的端口数量及其含义)。 它还提供防火墙规避和欺骗功能。 2、Lynis Lynis Lynis 是安全审[详细]
-
终于学会Python?别闹了,本文中的东西你搞懂了吗?
所属栏目:[优化] 日期:2019-08-29 热度:89
作为一名新手Python程序员,你首先需要学习的内容之一就是如何导入模块或包。但是我注意到,那些许多年来不时使用Python的人并不是都知道Python的导入机制其实非常灵活。在本文中,我们将探讨以下话题: 常规导入(regular imports) 使用from语句导入 相对[详细]
-
Go语言中执行命令的几种方式
所属栏目:[优化] 日期:2019-08-29 热度:154
go语言用来执行一个系统的命令相对python来说还是有点复杂的,执行命令是一个非常常见的需求,如调用一个系统命令,启一个exe等,这里分为几种情况,之后统一总结一下。 只执行命令,不要输出结果 执行命令并且要获取到输出结果 阻塞和异步的执行 以下以pi[详细]
-
Java架构之Redis系列:通过文章点赞排名案例学习Sortedset命令
所属栏目:[优化] 日期:2019-08-29 热度:66
前言 这一篇文章将讲述Redis中的sortedset类型命令,同样也是通过demo来讲述,其他部分这里就不在赘述了。 案例 demo功能是文章点赞排名等等,整个demo的大致页面如下。 准备工作 首先定义一个存储文章的key privatestaticfinalStringZSET_KEY=articleList[详细]
