Wesley13 Wesley13
3年前
java Future用法和意义一句话击破
在并发编程时,一般使用runnable,然后扔给线程池完事,这种情况下不需要线程的结果。 所以run的返回值是void类型。 如果是一个多线程协作程序,比如菲波拉切数列,1,1,2,3,5,8...使用多线程来计算。 但后者需要前者的结果,就需要用callable接口了。 callable用法和runnable一样,只不过调用的
Wesley13 Wesley13
3年前
sql2008 r2 数据库 复制操作 代理作业失败的相关操作
前言:对于实在没有办法而又不得不使用sqlserver的亲们真是一路走来各种的辛酸呀!!!给各位亲们一个大大的赞,多的不说,直接步入正题解决问题。解决的方法:1.首先找到自己电脑的sqlserver配置管理器(win8自己在应用程序里面找到对应),然后点击打开。!(http://static.oschina.net/uploads/im
Stella981 Stella981
3年前
Redis 缓存穿透、缓存雪崩的概念及其预防
缓存穿透【什么是缓存穿透】频繁查询不在缓存中的数据,给原本被缓存保护的系统过大压力。【为什么会发生缓存穿透】1\.程序没写好;2\.恶意攻击。【怎样防止缓存穿透】1\.在对key进行查询之前,先做初步判断,如果key一定不存在(例如,对某表的缓存,key一定由数字组成,那么包含非数字的key一定是不存在的
Wesley13 Wesley13
3年前
Sql优化器究竟帮你做了哪些工作?
上一篇,我们介绍了《DB——数据的读取和存储方式》(https://my.oschina.net/u/1859679/blog/1581379),这篇聊聊sql优化器的工作。关系型数据库的一大优势之一,用户无需关心数据的访问方式,因为这些优化器都帮我们处理好了,但sql查询优化的时候,我不得不要对此进行关注,因为这牵扯到查询性能问题。有经验的程序
Stella981 Stella981
3年前
Spark常见问题汇总
注意:如果Driver写好了代码,eclipse或者程序上传后,没有开始处理数据,或者快速结束任务,也没有在控制台中打印错误,那么请进入spark的web页面,查看一下你的任务,找到每个分区日志的stderr,查看是否有错误,一般情况下一旦驱动提交了,报错的情况只能在任务日志里面查看是否有错误情况了1、Operationcatego
Stella981 Stella981
3年前
Spring InitBean
概述初始化过程无非是读取\解析\注册,相信程序员都能实现它,但是要把它变成一个框架性的工具还是需要走很多路的。1.load即资源加载,具体说就是找到合适的工具读取合适的资源(不同的方法读取不同的资源,下一篇有详解)2.parse即资源解析,这里的标准比较多,先是根据读取XML中的关键字“DTD”来
凿壁偷光 凿壁偷光
2年前
SmartGit 许可证文件 Git客户端 支持Silicon M1
SmartGitforMac一款Git版本控制系统的图形化客户端程序,它能在您的工作上满足您的需求,smartgit是一个企业级的Git、Mercurial、以及Subversion图形化客户端软件,功能非常强大,它可以简单快速的实现Git及Mercurial中的版本控制工作,从而大大提高您的工作效率。并支持SiliconM1芯片的Mac电脑!
DevOpSec DevOpSec
2年前
Log4j史诗级漏洞,从原理到实战,只用3个实例就搞定!
背景最近互联网技术圈最火的一件事莫过于Log4j2的漏洞了。同时也涌现出了各类分析文章,关于漏洞的版本、漏洞的原因、漏洞的修复、程序员因此加班等等。经常看我文章的朋友都知道,面对这样热门有意思的技术点,怎能错过深入分析一波呢?大概你也已经
什么是数据库
数据库是计算机系统的三大核心基础软件之一。数据库是计算机系统的三大核心基础软件之一。它是存储在数据数据库中的基本对象,包括数字、图像、音频等形式。它被一步一步抽象后存储在数据库中,通常由数据库管理系统(DBMS)控制。DBMS充当数据库与其用户或程序之间的
一份解决爬虫错误问题指南
在互联网上进行自动数据采集已是互联网从业者的常规操作,爬虫程序想要长期稳定地进行数据采集,都会使用到爬虫代理来避免目标网站的IP访问限制。在数据采集过程中难免会遇到各种各样的问题,若想要想要快速分析数据采集过程中的问题,我们该怎么做呢?其实可以通过HTTP