-
聊一聊Java 泛型全解
所属栏目:[优化] 日期:2019-09-06 热度:74
对于java的泛型我一直属于一知半解的,平常真心用的不多。直到阅读《Effect Java》,看到很多平常不了解的用法,才下定决心,需要系统的学习,并且记录下来。 1、泛型的概述: 1.1 泛型的由来 根据《Java编程思想》中的描述,泛型出现的动机: 有很多原因促[详细]
-
负载均衡常见算法,你知道几个?
所属栏目:[优化] 日期:2019-09-06 热度:113
冷备与热备 冷备份(cool standby),指配备平时不运行的备用设备,当运行设备发生故障时,使用备用设备替换。 热备份(hot standby),指在设备运行的同时运行备用设备,当运行设备发生故障时,能够自动替换备用设备。 fail-over与fail-back fail-over,在空[详细]
-
Python关键字yield-大牛必须掌握的高端语法
所属栏目:[优化] 日期:2019-09-06 热度:103
小白:大牛哥,刚才看到有一个函数不使用return返回结果,而是使用yield关键字返回结果,看不太明白,Python中yield关键字的用途是什么,它有什么作用呀? 大牛: 要想理解yield的作用,你必须了解什么是生成器(generators),了解生成器之前(generators)你需要[详细]
-
汇总程序员学习Python必备的42个快捷键,看完收获满满
所属栏目:[优化] 日期:2019-09-06 热度:156
很多程序员在学习python的时候,是否遇到过一些操作不方便且很繁琐小问题,特别还会影响到你工作的进度,或许这50个快捷键能够帮助到你哦! 首先先从Shift系列的按键开始: 1. Shift+Alt+Enter 切换全屏编辑 2. Shift+Alt+C 新建类 3. Shift+Alt+箭头键 选[详细]
-
Python 初学者常犯的5个错误,布尔型竟是整型的子类
所属栏目:[优化] 日期:2019-09-06 热度:132
Python 是一种高级的动态编程语言,它以易于使用著名。目前 Python 社区已经非常完善了,近几年它的发展尤为迅猛。但是易于使用同样能带来一些坏处,即易于误用。在本文中,作者列举了 5 个初学者常犯的错误,希望它们能帮助初学者写更加正确与优美的代码[详细]
-
GitHub 学生大礼包开放申请:近 50 种专业工具随你用
所属栏目:[优化] 日期:2019-09-06 热度:89
雷锋网 AI 开发者按,时隔一年,GitHub 学生开发者包又来啦! 据了解,这个项目构建的初衷是帮助学生利用真实的工具进行实验,提高学生对雇主的吸引力。通过验证的学生在学校期间可免费获得 Github Pro,Github 教育合作伙伴提供的独家优惠。 无论你是在开[详细]
-
SpringBoot 处理异常的几种常见姿势
所属栏目:[优化] 日期:2019-09-06 热度:127
一、使用 @ControllerAdvice 和 @ExceptionHandler 处理全局异常 这是目前很常用的一种方式,非常推荐。测试代码中用到了 Junit 5,如果你新建项目验证下面的代码的话,记得添加上相关依赖。 1. 新建异常信息实体类 非必要的类,主要用于包装异常信息。 sr[详细]
-
向攻击者学习?密码保护,你需要这样的反套路!
所属栏目:[优化] 日期:2019-09-06 热度:126
只要你是人类,肯定不可避免反复用过某一两个密码。实际上,大部分年龄介于 18-65 岁之间的网民都这样做过,并且越是年轻的网民,越有可能为自己的所有帐户使用同一个密码。 大家都知道这种做法不好,而且大部分网民都知道怎样创建足够强的密码:应该包含[详细]
-
案例详解:理解Python中的“解析式”
所属栏目:[优化] 日期:2019-09-06 热度:56
本篇文章将详细介绍解析式的基本要素及其各种形式。 Python中的解析式 解析式是允许在其他序列中构建序列的结构。Python 2.0介绍了列表解析式的概念,Python 3.0中进一步介绍了字典和集合解析式。 Pyhon中的解析式类型 为什么解析式如此强大?本文将通过一[详细]
-
用单库自增键来生成id了,后期怎么分库?哎,这个坑大!
所属栏目:[优化] 日期:2019-09-05 热度:176
星球水友写代码的提问: 沈老师,我们现在用户中心是单库单表,uid使用数据库自增主键,uid被很多业务关联,不能变化。 现在用户中心数据量逐步变大,有分库需求了,如何由单库升级为多库,保持历史uid不变,并且新生成的数据不冲突,有什么好办法么? ==问[详细]
-
TypeScript VS JavaScript 深度对比
所属栏目:[优化] 日期:2019-09-05 热度:157
TypeScript 和 JavaScript 是目前项目开发中较为流行的两种脚本语言,我们已经熟知 TypeScript 是 JavaScript 的一个超集,但是 TypeScript 与 JavaScript 之间又有什么样的区别呢?在选择开发语言时,又该如何抉择呢? 本文将会深入对比这两种语言,讨论两[详细]
-
架构选型之Nodejs与Java
所属栏目:[优化] 日期:2019-09-05 热度:116
前言: 身边越来越多的同事谈论Nodejs,谈其异步IO、事件回调、前后台统一一门语言,创业的朋友的第一个创业项目也选择了Nodejs,期望能够使用一种语言节省成本快速完成需求开发。与其他项目组的同事聊项目选型Java时被他们嘲笑了一把,怎么这么不与时俱进[详细]
-
网络管理员的5款网络配置管理工具,收藏了
所属栏目:[优化] 日期:2019-09-05 热度:83
企业网络的增速往往超出网络管理员的预期。一方面,这种增长反映了网络连接性的能力,而另一方面,它提出了管理这种复杂性势必需要选择正确工具的需求。在不同位置管理数百个交换机,路由器,设备和控制器的配置是十分具有挑战性的。即使对你的分布式网络[详细]
-
推动 IT 转型的三大法宝
所属栏目:[优化] 日期:2019-09-05 热度:86
当前,数字时代为中国及其他亚太地区的企业带来了巨大机遇:成功实现数字化转型的企业,能够提升其在全球市场的竞争力。IDC 预测,今年亚太地区的企业在数字化转型上的开支将超过 3,758 亿美元,中国将成为整个亚太地区较大的数字化转型市场,2019 年支出[详细]
-
给中级Python开发者的13个练手项目,适合你不?
所属栏目:[优化] 日期:2019-09-05 热度:77
Web 项目设计 内容聚合器(Content Aggregator) 1. 技术细节 该项目设计的主要目标是聚合内容。首先,我们需要知道内容聚合器从哪些站点获取内容。然后,使用请求库来发送 HTTP 请求,并使用 BeautifulSoup 解析和抓取站点的必要内容。 该应用程序可以将其[详细]
-
并发扣款,如何保证数据的一致性?
所属栏目:[优化] 日期:2019-09-05 热度:166
继续解答星球水友提问。 扣款的业务场景是怎样的? 用户购买商品的过程中,要对余额进行查询与修改,大致的业务流程如下:第一步,从数据库查询用户现有余额: SELECTmoneyFROMt_yueWHEREuid=$uid; 不妨设查询出来的$old_money=100元。 第二步,业务层实施[详细]
-
京东到家订单查询服务演进
所属栏目:[优化] 日期:2019-09-05 热度:120
背景 京东到家订单中心系统业务中,无论是外部商家的订单生产,或是内部上下游系统的依赖,订单查询的调用量都非常大,造成了订单数据读多写少的情况。京东到家的订单数据存储在Mysql中,但显然只通过DB来支撑大量的查询是不可取的,同时对于一些复杂的查[详细]
-
微服务的三种通信方法
所属栏目:[优化] 日期:2019-09-05 热度:202
在微服务架构的世界中,我们通过一系列服务构建应用。集合中的每项服务都符合以下标准: 松散耦合 可维护和可测试 可以独立部署 微服务架构中的每个服务都解决了应用中的业务问题,或至少支持一个。一个团队对应用中的一个或多个服务负责。 微服务架构可以[详细]
-
使用 Python 函数进行模块化
所属栏目:[优化] 日期:2019-09-05 热度:189
你是否对函数、类、方法、库和模块等花哨的编程术语感到困惑?你是否在与变量作用域斗争?无论你是自学成才的还是经过正式培训的程序员,代码的模块化都会令人困惑。但是类和库鼓励模块化代码,因为模块化代码意味着只需构建一个多用途代码块集合,就可以在[详细]
-
Redis基本类型及其数据结构
所属栏目:[优化] 日期:2019-09-05 热度:158
以前在使用Redis的时候,只是简单地使用它提供的基本数据类型和接口,并没有深入研究它底层的数据结构。最近打算重新学习梳理一下Redis方面的知识,所以打算从介绍Redis的基本类型及其数据结构入手。 redisObject Redis的key是顶层模型,它的value是扁平化[详细]
-
MySQL 进行 Docker 容器化之体验与感悟
所属栏目:[优化] 日期:2019-09-05 热度:118
原则 Docker 的使用原则是所有容器化的应用程序都应该是无状态的 ,即容器内部只跑业务逻辑,容器应用的所有配置文件、日志文件和持久化数据 都应该挂载到宿主机文件系统,不应该存储在容器内部,以免容器被误删或自身出现问题导致数据丢失。 MySQL 容器化[详细]
-
用Cython加速Python代码,速度溜到飞起
所属栏目:[优化] 日期:2019-09-05 热度:169
介绍 如果你曾用Python编写代码,那么你可能花了更多的时间等待某些代码块的执行,而不是你想要的。虽然有一些方法可以使您的代码更有效,但它很可能仍然比C代码慢。这主要归结为Python是一种动态编程语言,并将许多东西移动到C语言编译期间处理的运行时。[详细]
-
详解JVM内存布局及GC原理,值得收藏
所属栏目:[优化] 日期:2019-09-05 热度:69
java发展历史上出现过很多垃圾回收器,各有各的适应场景,不仅仅是开发,作为运维也需要对这方面有一定的掌握,今天简单介绍一下java的内存布局以及各种垃圾回收器的原理。 JVM内存布局 JVM从概念上大致分为6个(逻辑)区域: 这6块区域按是否被线程共享,可[详细]