- Java高并发系统限流算法的应用
赵广陆
arithmeticjava算法开发语言
目录1概述2计数器限流2.1概述2.2实现2.3结果分析2.4优缺点2.5应用3漏桶算法3.1概述3.2实现3.3结果分析3.4优缺点4令牌桶算法4.1概述4.2实现4.3结果分析4.4应用5滑动窗口5.1概述5.2实现5.3结果分析5.4应用想学习架构师构建流程请跳转:Java架构师系统架构设计1概述在开发高并发系统时有三把利器用来保护系统:缓存、降级和限流。限流可以认为服务降级的一种,限流是对
- Java进阶学习
m0_67403013
面试学习路线阿里巴巴android前端后端
进阶学习过程的几个方面第一阶段的学习是java基础的学习和javaEE的学习。第二阶段就是java学习的进阶啦。主要是面试书籍,下面是书籍推荐:多线程、并发实战java高并发程序设计和java并发编程的艺术:——“java高并发程序设计”,这本书主要是为了看第二本书做铺垫,直接看第二本书可能会很吃力。实战java高并发程序设计主要看:前4章、5.1、5.2、5.3、5.10、5.11和第6章。——
- 小明的Java面试奇遇之物流中台架构实战:从订单到微服务治理的深度拆解
无处不在的海贼
模拟互联网Java面试架构java面试
一、文章标题小明的Java面试奇遇之物流中台架构实战:从高并发订单到微服务治理的深度拆解二、文章标签Java高并发,微服务架构,SpringCloud,分布式事务,Redis缓存,Kafka消息队列,物流中台设计,DDD领域驱动,CI/CD实战,JVM调优,GitLabCI三、文章概述本文模拟了程序员小明在应聘物流中台Java开发工程师时,参与的一场技术面试。围绕日均过亿订单的交易中台建设展开,涵
- Java线程同步:从多线程协作到银行账户安全
qq_17153885
javajava安全jvm
前言:当多线程成为双刃剑在单核CPU时代,多线程曾是“伪并行”的代名词;如今,面对多核处理器与分布式系统的浪潮,真正的并行计算已成为Java高并发编程的基石。然而,线程在共享资源时的不确定性,如同一场没有红绿灯的十字路口交通——竞态条件(RaceCondition)、死锁(Deadlock)、内存可见性(MemoryVisibility)问题频发。如何让多个线程安全有序地协同工作?这正是线程同步(
- 《一文吃透Java中的线程池:原理 + 实战 + 性能优化》
魔道不误砍柴功
Java使用与案例分享java性能优化python
大家好呀!今天咱们来聊聊Java线程池这个"厨房管理大师",保证让你看完后连家里买菜的大妈都能明白线程池是咋回事!这篇文章会很长很长(超过3000字哦),但我会用最生活化的例子让你轻松掌握这个Java高并发核心知识点!一、线程池是个啥?想象一下你开了一家餐馆,每次来一个客人你就新雇一个厨师,客人走了就把厨师开除…这得多折腾啊!线程池就是帮你管理这些"厨师"的智能管家,它会让固定数量的厨师一直待
- Java线程池参数配置黄金法则:CPU密集型与IO密集型任务的线程池优化实战
Android洋芋
Java线程池CPU密集型IO密集型性能优化动态调优拒绝策略
一、引言在Java高并发应用开发中,线程池的合理配置是提升系统性能和稳定性的关键。不同的任务类型需要不同的线程池参数配置策略,以最大化资源利用率并避免系统过载。本文深入分析Java线程池参数配置的黄金法则,针对CPU密集型与IO密集型任务提供理论依据和实战代码,帮助开发者避免性能陷阱,构建高效稳定的并发应用。深入探讨CPU密集型与IO密集型任务的线程池配置黄金法则,从底层原理出发,提供详细的代码示
- 互联网大厂Java求职面试实战:Spring Boot与微服务场景深度解析
码农飞哥
Java场景面试宝典JavaSpringBoot微服务互联网医疗数据库安全消息队列
1.Python基础专栏,基础知识一网打尽,9.9元买不了吃亏,买不了上当。Python从入门到精通2.毕业设计专栏,毕业季咱们不慌忙,几百款毕业设计等你选。❤️3.Python爬虫专栏,系统性的学习爬虫的知识点。9.9元买不了吃亏,买不了上当。python爬虫入门进阶❤️4.Ceph实战,从原理到实战应有尽有。Ceph实战❤️5.Java高并发编程入门,打卡学习Java高并发。Java高并发编程
- Java虚拟线程:百万并发下的“轻量级睡眠“黑科技
码农技术栈
Java进阶java科技开发语言后端
前言:从"线程池焦虑"到"百万并发自由"你是否曾为Java高并发场景下的线程池参数调优而头疼?是否经历过因线程数量限制导致请求堆积的窘境?JDK21引入的虚拟线程(VirtualThreads)彻底改变了这一局面!它就像给Java并发模型装上了"太空引擎",让单机百万并发从梦想变为现实。本文将揭秘虚拟线程如何通过"轻量级睡眠"机制实现这一奇迹。一、传统线程的"沉重睡眠"之痛1.1操作系统线程的局限
- 2024-2025年计算机软件毕业设计选题大全:2000个精品选题推荐✅
毕业设计课程设计
毕业设计pythonjava毕业设计毕设计算机网络springboot
1.Python基础专栏,基础知识一网打尽,9.9元买不了吃亏,买不了上当。Python从入门到精通2.毕业设计专栏,毕业季咱们不慌忙,几千款毕业设计等你选。❤️3.Python爬虫专栏,系统性的学习爬虫的知识点。9.9元买不了吃亏,买不了上当。python爬虫入门进阶❤️4.Ceph实战,从原理到实战应有尽有。Ceph实战❤️5.Java高并发编程入门,打卡学习Java高并发。Java高并发编程
- java高并发系统优化_Java秒杀系统方案优化 高性能高并发实战
姚朝明
java高并发系统优化
第1章课程介绍及项目框架搭建技术选型思路分析,基于Maven的Spring-Boot工程框架的搭建,集成Thymeleaf,集成Mybatis,安装Redis,集成Redis等等。第2章实现用户登录以及分布式session功能实现用户登录功能,实现密码两次MD5入库以及分布式Session。一则熟悉SpringBoot开发模式和该选型下的技术衔接,二则为后面的秒杀功能提供必备的用户信息。第3章秒杀
- 百万QPS压垮系统?AI生成Java高并发优化方案,某东电商秒杀实战
互联网
在当今数字化时代,高并发场景已成为众多Java应用面临的常态,如电商大促、在线直播等活动期间,系统需承受巨大的访问压力。因此,Java性能优化在高并发场景下显得尤为重要。传统的人工编写代码优化方式不仅耗时费力,还容易出现疏漏。而随着人工智能技术的发展,AI工具为高并发场景下的Java性能优化提供了新的解决方案,本文以飞算JavaAI为例进行深入探讨。飞算JavaAI生成分布式锁与缓存策略代码在高并
- 面经分享,中科创达(安卓开发,二面挂)
慕容魏
java开发语言
首先是评价,公司属于是新成立的外资合资企业,主要是对德和对日。然后一面线上面试很简单,二面线下技术主管和HR一起面试,强度较大比较细腻,但是面试官很温和很耐心。一面(因为是安卓开发,不对口,就只问了Java)1.Java高并发多线程理解,线程池参数2.Java集合3.list具体,以及和map区别4.hashmap的底层原理5.数据结构,集合队列和树6.项目里面的和安卓开发有关吗,讲解一下7.排序
- Java高并发解决方案
wang_shuyu
Javajava高并发
无论大型门户网站还是中小型垂直类型网站都会对稳定性、性能和可伸缩性有所追求。大型网站的技术经验分享值得我们去学习和借用,但落实到更具体的实践上并不是对所有网站可以适用,其他语言开发的网站我还不敢多说,但Java开发的系统,我还是能您给插上几句话:JVMJEE容器中运行的JVM参数配置参数的正确使用直接关系到整个系统的性能和处理能力,JVM的调优主要是对内存管理方面的调优,优化的方向分为以下4点:1
- Java高并发容器的内核解析:从无锁算法到分段锁的架构演进
猿享天开
开发语言java
《Java高并发容器的内核解析:从无锁算法到分段锁的架构演进》本文将以JUC包核心容器为切入点,深入剖析ConcurrentHashMap在Java8中的64位Hash分段技术,解密LinkedBlockingQueue双锁队列设计的吞吐量秘密,并给出各容器在亿级流量场景下的性能压测对比与选型决策矩阵。一、BlockingQueue体系:生产者-消费者模式的工业级实现1.阻塞队列的四大行为矩阵行为
- 【高并发】Java 高并发 HTTP 接口优化:如何在 10 毫秒内调用 20+ 服务?
工一木子
高并发Java系统设计javahttp接口优化
Java高并发HTTP接口优化:如何在10毫秒内调用20+服务?在分布式系统中,一个HTTP接口调用多个外部服务是常见场景。但如果需要在10毫秒内完成20+服务调用,就面临网络延迟、线程切换、I/O阻塞等挑战。本文将深入剖析高性能HTTP接口优化策略,并提供Java并发实战代码。1.面临的挑战同步调用慢:如果串行调用20个服务,每个服务平均耗时50ms,总时长将超过1秒。网络延迟:HTTP请求通常
- 《Java高并发与多线程:从原理“破壁”到实战“狂飙”的硬核攻略》
以恒1
java
Java必学,看一眼不吃亏,万一对你有用呢,本文万字解析进程与线程本质,讲解了多线程和高并发的原理,详解synchronized锁升级机制,剖析JUC工具库与线程池异步,结合实时监控,电力调控等高并发场景,提供线程池调优、分布式锁(Redis)等实战方案,贯通原理到工程的全链路知识。一、操作系统基础:理解并发编程的根基1.进程与线程的本质区别官方定义:进程是操作系统资源分配的基本单位,每个进程拥有
- 【硬核对比】ReentrantReadWriteLock 被全面碾压?阿里百万级压测揭秘 StampedLock 的真实性能!
努力的靠近目标
并发编程java
关键词:Java高并发、读写锁性能、StampedLock源码、锁优化、线程安全设计开篇暴击:一个锁的选择失误,让公司一夜损失百万!某金融系统因错误使用ReentrantReadWriteLock,导致对账延迟12小时,直接经济损失300万!同一场景改用StampedLock后,吞吐量提升6倍,延迟降低90%!本文将用源码层暴力拆解+阿里云压测数据+蚂蚁金服实战代码,深度对比两大读写锁,带你避开高
- 2024Java零基础自学路线(Java基础、Java高并发、MySQL、Spring、Redis、设计模式、Spring Cloud)
ekskef_sef
面试学习路线阿里巴巴javaspringmysql
目录一、Java基础1、Java基础3、Java8新特性4、Java集合5、Java高并发6、Java代码实例二、MySQL数据库三、SpringBoot框架(35天)四、微服务SpringCloud四、Redis中间件五、MongoDB数据库六、Netty网络编程七、23种设计模式八、Dubbo九、JavaScript零基础入门十、Vue基础知识十一、数据结构与算法大家好,我是哪吒。现在网上的学
- 第19章 Future设计模式(Java高并发编程详解:多线程与系统设计)
扫地僧009
Java高并发编程设计模式javapython
1.先给你一张凭据假设有个任务需要执行比较长的的时间,通常需要等待任务执行结束或者出错才能返回结果,在此期间调用者只能陷入阻塞苦苦等待,对此,Future设计模式提供了一种凭据式的解决方案。在我们日常生活中,关于凭据的使用非常多见,比如你去某西服手工作坊想订做一身合体修身的西服,西服的制作过程比较漫长,少则一个礼拜,多则一个月,你不可能一直待在原地等待,一般来说作坊会为你开一个凭据,此凭据就是Fu
- 第18章 不可变对象设计模式(Java高并发编程详解:多线程与系统设计)
扫地僧009
Java高并发编程设计模式javapython
1.线程安全所谓共享的资源,是指在多个线程同时对其进行访问的情况下,各线程都会使其发生变化,而线程安全性的主要目的就在于在受控的并发访问中防止数据发生变化。除了使用synchronized关键字同步对资源的写操作之外,还可以在线程之间不共享资源状态,甚至将资源的状态设置为不可变。在本章中,我们将讨论如何设计不可变对象,这样就可以不用依赖于synchronized关键字的约束。2.不可变对象的设计J
- Java高并发编程详解系列-深入理解Thread构造
nihui123
高并发Java高并发Java高并发
上篇分享中主要是对线程的基本概念和基本操作做了一个分享,同时提出了两种常用的创建多线程的方法,当然在后期的分享中也会提及到更多的创建线程的方式,到后期的分享的时候再说。这次主要是深入的理解一下Thread的构造函数,通过构造函数对于Thread有一个更加深入的了解。这里首先提供一个JDK1.6的ThreadAPI截图线程命名规范 从源码分析可以看到在Thread类中默认提供了线程的命名方式,这个
- Java高并发编程详解系列-Balking设计模式
nihui123
高并发设计模式java编程语言
导语 在实际操作中当某个线程因为发现其他线程正在进行相同的工作而放弃即将开始的任务,这种情况就被称为是Balking模式,Balking英文的意思是犹豫。在多个线程监控某个共享变量,A线程监控到共享变量发生变化后立即触发某个动作,但是这个这个时候发现了B线程也对该变量开始了行动,这个时候A变量就放弃了准备工作。下面就来详细的讲解一下关于Balking模式什么是Balking模式 在餐厅吃饭的时
- Java高并发编程详解系列-Future设计模式
nihui123
高并发Java高并发Future高并发
导语 假设,在一个使用场景中有一个任务需要执行比较长的时间,通常需要等待任务执行结束之后或者是中途出错之后才能返回结果。在这个期间调用者只能等待,对于这个结果Future设计模式提供了一种凭据式的解决方案。在日常生活中,这种方案也是存在的。例如去洗衣店洗衣服,当你把衣服放到洗衣店,等他洗完需要一段时间,这个时候洗衣店就会给你一凭证,你可以通过这个凭证到时候去取洗好的衣服。这个例子就是生活中的Fu
- java高并发程序设计-锁的优化
fantasyYan2
java高并发程序设计javajvmjava多线程锁优化CAS
如何提高锁的性能减少锁持有时间即对类似如下的方法publicsynchronizedvoidsync(){a();//其实只有b需要同步处理b();c();}改进为publicvoidsync(){a();synchronized(this){b();}c();}从而减少锁的持有时间减少锁粒度如ConcurrentHashMap内部分成若干个小的HashMap,每个HashMap加不同的锁读写分离
- Java高并发秒杀
小螺丝钉cici
高并发下的事务秒杀业务场景具有典型的“事务”特性秒杀红包类需求常见Demo:https://github.com/sunzeying/seckill视频来源:https://www.imooc.com/video/11830image.pngimage.png秒杀事务相关:(减库存,记录购买明细)->事务处理->数据落地MySQL实现秒杀难点分析:难点问题:竞争(多个用户同时秒杀这个商品。就产生了
- Java高并发实战:利用线程池和Redis实现高效数据入库
微笑听雨。
java进阶教程java多线程并发编程springredis
高并发数据入库实战:利用线程池和Redis实现高效数据入库在高并发环境中,进行数据入库是一项具有挑战性的任务。本文将介绍如何利用线程池和Redis实现数据的实时缓存和批量入库处理,确保系统的性能和稳定性。主要思路和组件介绍思路概述在高并发情况下,数据入库需要解决两个主要问题:实时性和稳定性。通过将数据首先存储在Redis缓存中,可以快速响应和处理大量的数据请求,然后利用线程池定期批量将数据从Red
- 实战Java高并发程序设计笔记第三章
MisterDo
JDK并发包本章内容:1、关于同步控制的工具2、线程池3、JDK的一些并发容器多线程的团队协作:同步控制synchronized的功能扩展:重入锁可以完全替代synchronized,使用java.util.concurrent.locks.ReentrantLock类来实现publicclassReenterLockimplementsRunnable{publicstaticReentrant
- JAVA高并发——JDK的并发容器
布道师小羊
#网络+并发+函数式+JVMJAVA高阶java开发语言
文章目录1、超好用的工具类:并发集合简介2、线程安全的HashMap3、深入浅出ConcurrentHashMap3.1、ConcurrentHashMap的内部数据结构3.2、put()方法的实现3.3、get()方法的实现4、有关List的线程安全5、高效读写的队列:深度剖析ConcurrentLinkedQueue类6、高效读取:不变模式下的CopyOnWriteArrayList类7、数据
- JAVA高并发——锁的优化
布道师小羊
#网络+并发+函数式+JVMJAVA高阶java开发语言
文章目录1、减少锁持有时间2、减小锁粒度3、用读写分离锁来替换独占锁4、锁分离5、锁粗化锁是最常用的同步方法之一。在高并发的环境下,激烈的锁竞争会导致程序的性能下降,因此我们有必要讨论一些有关锁的性能的问题,以及一些注意事项,比如避免死锁、减小锁粒度、锁分离等。在多核时代,使用多线程可以明显地提高系统的性能,但是也会额外增加系统的开销。对于单任务或者单线程的应用而言,其主要资源消耗都源自任务本身。
- JAVA高并发——Java虚拟机锁优化
布道师小羊
#网络+并发+函数式+JVMJAVA高阶java开发语言
文章目录1、锁偏向2、轻量级锁3、自旋锁4、锁消除作为一款共用平台,JDK本身也为并发程序的性能绞尽脑汁。在JDK内部也想尽一切办法提高并发时的系统吞吐量。这里将向大家简单介绍几种JDK内部的“锁”优化策略。1、锁偏向锁偏向是一种针对加锁操作的优化手段。它的核心思想是:如果一个线程获得了锁,那么锁就进入偏向模式。当这个线程再次请求锁时,无须再做任何同步操作。这样就节省了大量有关锁请求的操作,从而提
- 戴尔笔记本win8系统改装win7系统
sophia天雪
win7戴尔改装系统win8
戴尔win8 系统改装win7 系统详述
第一步:使用U盘制作虚拟光驱:
1)下载安装UltraISO:注册码可以在网上搜索。
2)启动UltraISO,点击“文件”—》“打开”按钮,打开已经准备好的ISO镜像文
- BeanUtils.copyProperties使用笔记
bylijinnan
java
BeanUtils.copyProperties VS PropertyUtils.copyProperties
两者最大的区别是:
BeanUtils.copyProperties会进行类型转换,而PropertyUtils.copyProperties不会。
既然进行了类型转换,那BeanUtils.copyProperties的速度比不上PropertyUtils.copyProp
- MyEclipse中文乱码问题
0624chenhong
MyEclipse
一、设置新建常见文件的默认编码格式,也就是文件保存的格式。
在不对MyEclipse进行设置的时候,默认保存文件的编码,一般跟简体中文操作系统(如windows2000,windowsXP)的编码一致,即GBK。
在简体中文系统下,ANSI 编码代表 GBK编码;在日文操作系统下,ANSI 编码代表 JIS 编码。
Window-->Preferences-->General -
- 发送邮件
不懂事的小屁孩
send email
import org.apache.commons.mail.EmailAttachment;
import org.apache.commons.mail.EmailException;
import org.apache.commons.mail.HtmlEmail;
import org.apache.commons.mail.MultiPartEmail;
- 动画合集
换个号韩国红果果
htmlcss
动画 指一种样式变为另一种样式 keyframes应当始终定义0 100 过程
1 transition 制作鼠标滑过图片时的放大效果
css
.wrap{
width: 340px;height: 340px;
position: absolute;
top: 30%;
left: 20%;
overflow: hidden;
bor
- 网络最常见的攻击方式竟然是SQL注入
蓝儿唯美
sql注入
NTT研究表明,尽管SQL注入(SQLi)型攻击记录详尽且为人熟知,但目前网络应用程序仍然是SQLi攻击的重灾区。
信息安全和风险管理公司NTTCom Security发布的《2015全球智能威胁风险报告》表明,目前黑客攻击网络应用程序方式中最流行的,要数SQLi攻击。报告对去年发生的60亿攻击 行为进行分析,指出SQLi攻击是最常见的网络应用程序攻击方式。全球网络应用程序攻击中,SQLi攻击占
- java笔记2
a-john
java
类的封装:
1,java中,对象就是一个封装体。封装是把对象的属性和服务结合成一个独立的的单位。并尽可能隐藏对象的内部细节(尤其是私有数据)
2,目的:使对象以外的部分不能随意存取对象的内部数据(如属性),从而使软件错误能够局部化,减少差错和排错的难度。
3,简单来说,“隐藏属性、方法或实现细节的过程”称为——封装。
4,封装的特性:
4.1设置
- [Andengine]Error:can't creat bitmap form path “gfx/xxx.xxx”
aijuans
学习Android遇到的错误
最开始遇到这个错误是很早以前了,以前也没注意,只当是一个不理解的bug,因为所有的texture,textureregion都没有问题,但是就是提示错误。
昨天和美工要图片,本来是要背景透明的png格式,可是她却给了我一个jpg的。说明了之后她说没法改,因为没有png这个保存选项。
我就看了一下,和她要了psd的文件,还好我有一点
- 自己写的一个繁体到简体的转换程序
asialee
java转换繁体filter简体
今天调研一个任务,基于java的filter实现繁体到简体的转换,于是写了一个demo,给各位博友奉上,欢迎批评指正。
实现的思路是重载request的调取参数的几个方法,然后做下转换。
- android意图和意图监听器技术
百合不是茶
android显示意图隐式意图意图监听器
Intent是在activity之间传递数据;Intent的传递分为显示传递和隐式传递
显式意图:调用Intent.setComponent() 或 Intent.setClassName() 或 Intent.setClass()方法明确指定了组件名的Intent为显式意图,显式意图明确指定了Intent应该传递给哪个组件。
隐式意图;不指明调用的名称,根据设
- spring3中新增的@value注解
bijian1013
javaspring@Value
在spring 3.0中,可以通过使用@value,对一些如xxx.properties文件中的文件,进行键值对的注入,例子如下:
1.首先在applicationContext.xml中加入:
<beans xmlns="http://www.springframework.
- Jboss启用CXF日志
sunjing
logjbossCXF
1. 在standalone.xml配置文件中添加system-properties:
<system-properties> <property name="org.apache.cxf.logging.enabled" value=&
- 【Hadoop三】Centos7_x86_64部署Hadoop集群之编译Hadoop源代码
bit1129
centos
编译必需的软件
Firebugs3.0.0
Maven3.2.3
Ant
JDK1.7.0_67
protobuf-2.5.0
Hadoop 2.5.2源码包
Firebugs3.0.0
http://sourceforge.jp/projects/sfnet_findbug
- struts2验证框架的使用和扩展
白糖_
框架xmlbeanstruts正则表达式
struts2能够对前台提交的表单数据进行输入有效性校验,通常有两种方式:
1、在Action类中通过validatexx方法验证,这种方式很简单,在此不再赘述;
2、通过编写xx-validation.xml文件执行表单验证,当用户提交表单请求后,struts会优先执行xml文件,如果校验不通过是不会让请求访问指定action的。
本文介绍一下struts2通过xml文件进行校验的方法并说
- 记录-感悟
braveCS
感悟
再翻翻以前写的感悟,有时会发现自己很幼稚,也会让自己找回初心。
2015-1-11 1. 能在工作之余学习感兴趣的东西已经很幸福了;
2. 要改变自己,不能这样一直在原来区域,要突破安全区舒适区,才能提高自己,往好的方面发展;
3. 多反省多思考;要会用工具,而不是变成工具的奴隶;
4. 一天内集中一个定长时间段看最新资讯和偏流式博
- 编程之美-数组中最长递增子序列
bylijinnan
编程之美
import java.util.Arrays;
import java.util.Random;
public class LongestAccendingSubSequence {
/**
* 编程之美 数组中最长递增子序列
* 书上的解法容易理解
* 另一方法书上没有提到的是,可以将数组排序(由小到大)得到新的数组,
* 然后求排序后的数组与原数
- 读书笔记5
chengxuyuancsdn
重复提交struts2的token验证
1、重复提交
2、struts2的token验证
3、用response返回xml时的注意
1、重复提交
(1)应用场景
(1-1)点击提交按钮两次。
(1-2)使用浏览器后退按钮重复之前的操作,导致重复提交表单。
(1-3)刷新页面
(1-4)使用浏览器历史记录重复提交表单。
(1-5)浏览器重复的 HTTP 请求。
(2)解决方法
(2-1)禁掉提交按钮
(2-2)
- [时空与探索]全球联合进行第二次费城实验的可能性
comsci
二次世界大战前后,由爱因斯坦参加的一次在海军舰艇上进行的物理学实验 -费城实验
至今给我们大家留下很多迷团.....
关于费城实验的详细过程,大家可以在网络上搜索一下,我这里就不详细描述了
在这里,我的意思是,现在
- easy connect 之 ORA-12154: TNS: 无法解析指定的连接标识符
daizj
oracleORA-12154
用easy connect连接出现“tns无法解析指定的连接标示符”的错误,如下:
C:\Users\Administrator>sqlplus username/
[email protected]:1521/orcl
SQL*Plus: Release 10.2.0.1.0 – Production on 星期一 5月 21 18:16:20 2012
Copyright (c) 198
- 简单排序:归并排序
dieslrae
归并排序
public void mergeSort(int[] array){
int temp = array.length/2;
if(temp == 0){
return;
}
int[] a = new int[temp];
int
- C语言中字符串的\0和空格
dcj3sjt126com
c
\0 为字符串结束符,比如说:
abcd (空格)cdefg;
存入数组时,空格作为一个字符占有一个字节的空间,我们
- 解决Composer国内速度慢的办法
dcj3sjt126com
Composer
用法:
有两种方式启用本镜像服务:
1 将以下配置信息添加到 Composer 的配置文件 config.json 中(系统全局配置)。见“例1”
2 将以下配置信息添加到你的项目的 composer.json 文件中(针对单个项目配置)。见“例2”
为了避免安装包的时候都要执行两次查询,切记要添加禁用 packagist 的设置,如下 1 2 3 4 5
- 高效可伸缩的结果缓存
shuizhaosi888
高效可伸缩的结果缓存
/**
* 要执行的算法,返回结果v
*/
public interface Computable<A, V> {
public V comput(final A arg);
}
/**
* 用于缓存数据
*/
public class Memoizer<A, V> implements Computable<A,
- 三点定位的算法
haoningabc
c算法
三点定位,
已知a,b,c三个顶点的x,y坐标
和三个点都z坐标的距离,la,lb,lc
求z点的坐标
原理就是围绕a,b,c 三个点画圆,三个圆焦点的部分就是所求
但是,由于三个点的距离可能不准,不一定会有结果,
所以是三个圆环的焦点,环的宽度开始为0,没有取到则加1
运行
gcc -lm test.c
test.c代码如下
#include "stdi
- epoll使用详解
jimmee
clinux服务端编程epoll
epoll - I/O event notification facility在linux的网络编程中,很长的时间都在使用select来做事件触发。在linux新的内核中,有了一种替换它的机制,就是epoll。相比于select,epoll最大的好处在于它不会随着监听fd数目的增长而降低效率。因为在内核中的select实现中,它是采用轮询来处理的,轮询的fd数目越多,自然耗时越多。并且,在linu
- Hibernate对Enum的映射的基本使用方法
linzx0212
enumHibernate
枚举
/**
* 性别枚举
*/
public enum Gender {
MALE(0), FEMALE(1), OTHER(2);
private Gender(int i) {
this.i = i;
}
private int i;
public int getI
- 第10章 高级事件(下)
onestopweb
事件
index.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/
- 孙子兵法
roadrunners
孙子兵法
始计第一
孙子曰:
兵者,国之大事,死生之地,存亡之道,不可不察也。
故经之以五事,校之以计,而索其情:一曰道,二曰天,三曰地,四曰将,五
曰法。道者,令民于上同意,可与之死,可与之生,而不危也;天者,阴阳、寒暑
、时制也;地者,远近、险易、广狭、死生也;将者,智、信、仁、勇、严也;法
者,曲制、官道、主用也。凡此五者,将莫不闻,知之者胜,不知之者不胜。故校
之以计,而索其情,曰
- MySQL双向复制
tomcat_oracle
mysql
本文包括:
主机配置
从机配置
建立主-从复制
建立双向复制
背景
按照以下简单的步骤:
参考一下:
在机器A配置主机(192.168.1.30)
在机器B配置从机(192.168.1.29)
我们可以使用下面的步骤来实现这一点
步骤1:机器A设置主机
在主机中打开配置文件 ,
- zoj 3822 Domination(dp)
阿尔萨斯
Mina
题目链接:zoj 3822 Domination
题目大意:给定一个N∗M的棋盘,每次任选一个位置放置一枚棋子,直到每行每列上都至少有一枚棋子,问放置棋子个数的期望。
解题思路:大白书上概率那一张有一道类似的题目,但是因为时间比较久了,还是稍微想了一下。dp[i][j][k]表示i行j列上均有至少一枚棋子,并且消耗k步的概率(k≤i∗j),因为放置在i+1~n上等价与放在i+1行上,同理