Java代码优化总结

  代码优化是一个很重要的课题。一般来说,代码优化的目标主要有两个,一个是减小代码的体积,另一个是提高代码运行的效率。   代码优化的细节有很多,此处列举部分:   1、尽量指定类、方法的final修饰符。   带有final修饰符的类是不可派生的。在Java核心API中,有许多应用final的例子,例如java.lang.String,整个类都是final的。   为类指定final修饰符可以让类不可以被继承,为方法指定final修饰符可以让方法不可以被重写。   如果指定了一个类为fina
分类: 其他 发布时间: 04-26 23:20 阅读次数: 6

SQL语句中where 1=0是什么意思

表示条件永远不成立 适用于导出表结构 比如说你想看下一个表的结构 你可以 select * from 表名 where 1=0 或者你想使用原表生成一个没有数据但是结构和原表结构一样的表 select * into 新表 from 源表
分类: 其他 发布时间: 04-26 23:20 阅读次数: 5

局部最优解的问题

我们一般认为神经网络会有局部最优解 就像三维中的坑洞一样,可能使我们的神经网络陷进去就出不来了 其实不是这样的 可以看到,我门的loss其实是一个多维的神经网络 那么对于第i维,我可以大致的认为在这一维,他上升或下降的概率均为0.5 我们知道,如果要形成坑洞的话,我们在这个区域上的所有点的梯度都必须是像下的才行 那这种概率,可以去买彩票了 所以,如果训练变慢,大概率是碰到了鞍点 这个时候,没事,多训练几次就行了 但是,千万,千万不要加大learning_rate 我也不知道为什么,但是加大le
分类: 其他 发布时间: 04-26 23:20 阅读次数: 8

第二章 第一节 spring-beans之BeanNameGenerator深入详解

前言 BeanNameGenerator是beans体系非常重要的一个组件,主要功能是从一定的条件中计算出bean的name.如果出现问题,是可以规避的。同样可以重写解决。 /** Map of bean definition objects, keyed by bean name */ private final Map<String, BeanDefinition> beanDefinitionMap = new ConcurrentHashMap<String, BeanDefinit
分类: 编程语言 发布时间: 04-26 23:16 阅读次数: 21

大型分布式网站架构:缓存在分布式系统中的应用

缓存是分布式系统中的重要组件,主要解决高并发,大数据场景下,热点数据访问的性能问题。提供高性能的数据快速访问。 一、缓存概述 缓存是分布式系统中的重要组件,主要解决高并发,大数据场景下,热点数据访问的性能问题。提供高性能的数据快速访问。 1.1缓存的原理 (1) 将数据写入/读取速度更快的存储(设备); (2) 将数据缓存到离应用最近的位置; (3) 将数据缓存到离用户最近的位置。 1.2缓存分类 在分布式系统中,缓存的应用非常广泛,从部署角度有以下几个方面的缓存应用。 (1) CDN缓存;
分类: 编程语言 发布时间: 04-26 23:16 阅读次数: 18

实时音视频聊天中超低延迟架构的思考与技术实践

1、前言 从直播在线上抓娃娃,不断变化的是玩法的创新,始终不变的是对超低延迟的苛求。实时架构是超低延迟的基石,如何在信源编码、信道编码和实时传输整个链条来构建实时架构?在实时架构的基础之上,如果通过优化采集、编码、传输、解码和渲染中的关键环节来降低延迟?本文将会介绍即构在这方面的思考与实践。 学习交流: - 即时通讯开发交流群:320837163 [推荐] - 移动端IM开发入门文章:《新手入门一篇就够:从零开发移动端IM》 (本文同步发布于:http://www.52im.net/threa
分类: 移动开发 发布时间: 04-26 23:16 阅读次数: 6

Ionic3学习笔记(十六)上传头像至图床

本文为原创文章,转载请标明出处 个人做的开源 Demo 登录注册模块采用的是 Wilddog 野狗通讯云的身份认证服务,不得不说各方面和 Google 收购的 Firebase 很像,十分简单易用。其中 User 有个 photoURL 字段是用来存放用户头像 URL 的,所以寻思着找了个免费的第三方图床(SM.MS)来存放用户头像。 用到的 Cordova 插件是 Camera 和 File Transfer,分别用来拍照、相册选择和上传图片,Cordova 插件的安装、导入、使用我就不
分类: 移动开发 发布时间: 04-26 23:16 阅读次数: 5

keepalived实现服务高可用

环境说明系统:centos7.4软件:keepalived:1.3.5nginx:1.12.2tcpdump工具主机:192.168.9.222192.168.9.223vip地址:192.168.9.151keepalived说明&emsp;&emsp;Keepalived软件主要是通过VRRP协议实现高可用功能的。VRRP是VirtualRouterRedundancyProtocol(虚拟路
分类: 企业开发 发布时间: 04-26 23:16 阅读次数: 6

Spring @autowired注解

摘要: 在搭建spring boot过程中,使用到该注解,因此去了解了下关于 @Autowired的相关使用方式
分类: 服务端 发布时间: 04-26 23:16 阅读次数: 17

现代移动端网络短连接的优化手段总结:请求速度、弱网适应、安全保障

摘要: 对于原生的移动端应用来说(本文中主要指iOS和Android应用),整个网络请求过程是自由控制的,一些新的网络层协议像 HTTP2 / QUIC 也是在这些方面进行了不少优化。在此总结当今主流的移动端网络常见优化手段,希望能给您带来启发。
分类: 移动开发 发布时间: 04-26 23:16 阅读次数: 20

7.Docker之dockerfile指令简介

待续...
分类: 其他 发布时间: 04-26 23:13 阅读次数: 3

关于dp方案记录的方法思考与优化

一般的方法是记录状态是从哪儿转移来的然后递归输出。 但是明显递归有爆栈的危险。 所以可以用一个 (增加理解难度而实际没用的) 方法来避免。 具体来说,用一个vector保存答案。 例如这一题中,一般题解是用 void print(int x,int y) { if(pre[x][y]==y) { cout<<y<<" "; return; } print(x-1,pre[x][y]); cout<<y<<" ";//记得
分类: 其他 发布时间: 04-26 23:13 阅读次数: 5

Xshell配置ssh免密码登录-密钥公钥(Public key)与私钥(Private Key)登录

ssh登录提供两种认证方式:口令(密码)认证方式和密钥认证方式。其中口令(密码)认证方式是我们最常用的一种,这里介绍密钥认证方式登录到linux/unix的方法。 使用密钥登录分为3步: 1、生成密钥(公钥与私钥); 2、放置公钥(Public Key)到服务器~/.ssh/authorized_key文件中; 3、配置ssh客户端使用密钥登录。 一、生成密钥公钥(Public key)与私钥(Private Key) 打开Xshell,在菜单栏点击“tools”,在弹出的菜单中选择“User
分类: 其他 发布时间: 04-26 23:13 阅读次数: 6

linux shell 字符串操作

最近在写shell脚本,发现了一些shell 字符串的骚操作,可以提升效率。 字符串读取 ${var} : 变量var的值 ${var-DEFAULT} : 如果var没有被声明,var的值就是$DEFAULT ${var:-DEFAULT} : 如果var没有被声明,或者为空,var的值就是$DEFAULT ${var=DEFAULT} : 如果var没有被声明,var的值就是$DEFAULT ${var: =DEFAULT} : 如果var没有被声明,或者为空,var的值就是$DEFAUL
分类: 其他 发布时间: 04-26 23:13 阅读次数: 7

LinkedList源码和并发问题分析

1.LinkedList源码分析 LinkedList的是基于链表实现的java集合类,通过index插入到指定位置的时候使用LinkedList效率要比ArrayList高,以下源码分析是基于JDK1.8. 1.1 类的继承结构 LinkedList类的继承结构如如下所示: 从以上继承结构图中可以看到,最顶层接口为Iterable接口,实现此接口的类支持通过迭代器遍历集合中的元素。其他相关接口如Collection、List、Queue、Deque分别为列表,队列功能的相关接口,即此Link
分类: 其他 发布时间: 04-26 23:13 阅读次数: 7

cs229_part4

又到了一节很重要的课,因为这个学习理论是从统计角度为机器学习算法提供了一个理论基础。 学习理论 问题背景 先回顾一下我们第一节课提到的机器学习的组成: 第一节课只是简单的提了一下,现在我们要真正来分析这张图了。首先机器学习的最终目的就是得到真正的映射f,但是f我们无法得到,所以拿一个g去拟合。这是什么意思呢。就比如说你高考,会刷很多的习题,有很多次的模拟考。但是最终最终的目的都是为高考取得一个好成绩。那么这里也是一样的,如果你开始就拿到了高考的考卷,那你还刷什么习题,直接背高考的考卷不就完了吗
分类: 其他 发布时间: 04-26 23:13 阅读次数: 10

用python来更改小伙伴的windows开机密码,不给10块不给开机

今天教大家用python脚本来控制小伙伴们windows电脑的开机密码。没错就是神不知鬼不觉,用random()随机生成的密码,只有你自己知道哦~ 代码呢分两部分,一部分是client端跟server端两个。你只需要想办法让小伙伴运行你的client端脚本就OK啦。不过在此之前你一定要在你的电脑上运行server端哦~这样子的话,client端会在你的小伙伴电脑上随机生成一个密码然后通过socket发给server端也就是发给你哦~ 下面放代码,顺便加点注释。 client端代码: # cli
分类: 其他 发布时间: 04-26 23:13 阅读次数: 6

Intellij IDEA 生成Get/Set方法快捷键

从Eclipse到IDEA,已是第三天,好不容易适应了视觉上的改变,但快捷键的改变依然困扰着我。 尽管有方法使IDEA的快捷键改为何Eclipse一样,但既然换了作战工具,还是熟悉自带的比较好。 Alt + Insert 组合,可唤出选择面板: 选择自己需要的选项即可!
分类: 其他 发布时间: 04-26 23:13 阅读次数: 6

009-HTTP_01

请求头 : GET / HTTP/1.1 这两行比较重要 GET /classic.css HTTP/1.1 Host: 127.0.0.1:8997 Connection: keep-alive User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36 Accept: t
分类: 其他 发布时间: 04-26 23:13 阅读次数: 7

Intellij IDEA ,按Ctrl+左键,不能进入类或方法的【解决办法】,提示Cannot find declaration to go to

Intellij IDEA ,按Ctrl+左键,不能进入类或方法的【解决办法】,提示Cannot find declaration to go to 2017年8月4日 朱宏亮%1 $ S Intellij IDEA ,按Ctrl+左键,不能进入类或方法的【解决办法】,提示Cannot find declaration to go to 如图,,按住Ctrl+鼠标单击的时候,系统提示Cannot find declaration to go to。 原因:导入项目的时候使用的是Open而不是I
分类: 其他 发布时间: 04-26 23:13 阅读次数: 7