- metaRTC8.0,一个全新架构的webRTC SDK库
metaRTC
webrtc音视频
概述metaRTC8.0是metaRTC开源以来架构变化最大的一个版本,是metaIPC3.0等高性能的基础。metaRTC8.0是一个全新架构版本,并非在metaRTC7.0版本上简单升级,在QOS/语音对讲/内存占用/视频文件录制读取等方面新增多个模块,在弱网对抗/语音对讲/内存优化等效果上有显著提升。metaRTC8.0在一年多的开发中进行了近200次迭代,metaRTC8.0社区版计划在2
- metaRTC/webRTC QOS 方案与实践
metaRTC
metaRTC解决方案webrtcqos
概述质量服务(QOS/QualityofService)是指利用各种技术方案提高网络通信质量的技术,网络通信质量需要解决下面两个问题:网络问题:UDP/不稳定网络/弱网下的丢包/延时/乱序/抖动数据量问题:发送数据量超带宽负载和平滑发送拥塞控制是各种技术方案的数据基础,丢包恢复解决丢包问题,抗乱序抖动解决网络乱序抖动问题,流量控制解决平滑发送数据/数据超带宽负载/延时问题。拥塞控制(Congest
- metaRTC5.0 API编程指南(一)
metaRTC
metaRTCc++c语言webrtc
概述metaRTC5.0版本API进行了重构,本篇文章将介绍webrtc传输调用流程和例子。metaRTC5.0版本提供了C++和纯C两种接口。纯C接口YangPeerConnection头文件:include/yangrtc/YangPeerConnection.htypedefstruct{void*conn;YangAVInfo*avinfo;YangStreamConfigstreamco
- 二十四、k8s 资源管理
繁华依在
k8skubernetes容器云原生
目录一、资源配置范围管理LimitRange介绍1、LimitRange可以做什么:2、资源限制和请求的约束3、创建LimitsRange对象4、示例:创建一个pod5、测试用例测试1:测试2:测试3:二、资源服务质量管理(RequestsQos)1、Qos级别分类:1.1、Guaranteed:1.2、BestEffort:1.3、Burstable:2、Qos的工作特点3、示例三、资源配额管理
- WebRTC之LiveKit的基础入门使用(入门必看)
tabzzz
前端webrtcweb3typescript
LiveKit本文主要是讲解在Next13+中如何使用LiveKit来实现简单的音视频通话,想了解更多的还是要去官方文档去掌握更复杂、高级的使用方法。什么是LiveKitLiveKit是一个开源的实时通信平台,基于WebRTC,主要用于构建高质量的音视频通话、实时数据传输和互动应用。LiveKit除了方便以外的大优势就是它提供了丰富的API和SDK,支持多种平台,包括Web、iOS、Android
- 遇到的问题及解决方法汇总
w36680130
\N
遇到的问题及解决方法汇总参考文章:(1)遇到的问题及解决方法汇总(2)https://www.cnblogs.com/hd-test/p/12160407.html(3)https://www.codeprj.com/blog/b98d971.html备忘一下。
- jetpack compose 开发架构选择探讨(一)
iffly-csdn
jetpackcomposeandroidjetpackcomposemvvmmvi
jetpackcompose开发架构选择探讨(一)最近jetpackcompose发布了正式版本,在jetpackcompose刚出来的时候就一直有在关注这个全新的ui框架,但是一直没有基于它去做一个完整的项目,只是去了解这个框架的原理、特性等,最近基于jetpackcompose做了一个webrtc的视频通话项目(webrtc_compose),在项目开发过程中进一步加深了对jetpackcom
- 基于webrtc的多人连麦直播开源框架 Janus-gateway-iOS
天宇365
ios日常笔记iosobjective-c
低延时、地卡顿、高音画质是直播技术方向追求的方向,webrtc属于业内良心开源项目,绝大多数连麦直播技术基于此项目,连麦技术架构有Mesh、MCU、SFU三种技术架构。三种技术架构优缺点各异,大家可以自行查阅。但是基于目前的直播状况,现在最合适的,也是使用比较多的是SFU架构。但是SFU架构除了客户端的webrtc需要完成,更重要的服务器也需要搭建。如果你需要多人连麦直播 Janus-gatew
- 前缀列表(ip-prefix)配置
可惜已不在
华为网络华为
一.实验简介本来前缀列表是要和访问控制列表放在一起讲的,但是这里单拎出来是为了更详细的讲解两者的区别1.前缀列表针对IP比访问控制更加灵活。2.前缀列表在后面被引用时是无法对数据包进行过滤的实验拓扑二.实验目的R4路由器中只引入子网LoopBack的最后一位为单数的子网实验配置R1:untermosyssysR1intg0/0/0ipadd192.168.12.124qospfrouter-id1
- jswebrtc 支持 SRS 的 Webrtc 播放器
王小工
前端webrtcjs
WebRTCWebRTC(WebReal-TimeCommunication)是一项实时通讯技术,它允许网络应用或站点在不借助中间媒介的情况下,建立浏览器之间点对点(Peer-to-Peer)的连接,实现视频流、音频流或其他任意数据的传输。WebRTC整体架构从上到下一共分为三层:WebAPI层:暴露给开发人员的用于开发WebRTC应用的JavaScriptAPI,如RTCPeerConnecti
- 【学习笔记】无人机系统(UAS)的连接、识别和跟踪(十一)-无人机A2X功能和特性
瑶光守护者
5G-A无人机学习笔记无人机3GPP5G
目录引言6.2高级功能和特性6.2.1A2X通信的授权和配置6.2.2A2X通信6.2.3A2X应用服务器发现6.2.4A2X通信的QoS处理6.2.5A2X服务订阅6.2.6标识符6.2.7EPSA2X与5GSA2X之间的互操作性6.2.8A2X使用的MBS服务描述引言3GPPTS23.256技术规范,主要定义了3GPP系统对无人机(UAV)的连接性、身份识别、跟踪及A2X(Aircraft-t
- [1286]python执行js代码方法汇总(PyExecJS、Js2Py、py-mini-racer)
周小董
Python前行者pythonjavascript
文章目录js2py简介及使用js2py简介js2py模块的使用js2py快速入门js代码翻译js代码中使用函数python执行js代码,学会这几个方法就够了楔子常见的Python调用JavaScript的方式使用nodejs命令PyExecJS方法通过Web浏览器DrissionPage方式playwright方式selenium方式Js2Py方式py-mini-racer方式小结js2py简介及
- RabbitMQ 消费端的限流策略(basicQos)
斯沃福德
rabbitmqjava
业务场景:高并发情况下,队列里面一瞬间就积累了上万条数据,但是消费者无法同时处理这么多请求,这个时候当我们打开客户端,瞬间就有巨量的信息给推送过来,但是客户端是没有办法同时处理这么多数据的,结果就是消费者(客户端)挂掉了…这种场景下我们就需要对消费端进行限流;限流策略限流策略关键代码:channel.basicQos();例:生产者://生产者publicclassProducer{private
- Python数据分析会用到的dataframe方法汇总(全)
翠花上酸菜
python数据分析开发语言
本文将dataframe的应用分为以下几类:1.创建dataframe的方法2.Dataframe读取文件的方法3.数据类型的转换4.增删改查操作5.统计函数汇总1.创建dataframe的多种方法以下四种类型可以创建dataframe:通过字典创建DataFrame通过列表创建DataFrame通过numpyndarray创建dataframe通过一个Series对象创建2.使用Datafram
- 搭建WebRTC服务器
音视频开发老马
音视频开发webrtc音视频
1、服务组成1、AppRTC房间服务,代码:github.com/webrtc/appr…2、Collider信令服务,AppRTC源码里自带3、CoTurn打洞服务,代码:github.com/coturn/cotu…打包资源:链接:pan.baidu.com/s/1ulx1FVRN…提取码:3e5f2、前期准备1、操作系统:Centos64bits2、Googlewebrtc的服务器Demo:
- 深入剖析webrtc事件机制 sigslot
头快撑不住了
源码解析webrtcwebrtc音视频
一、什么是信号槽在构建大型C++项目过程中,如何在各个类之间高效且安全地传递数据或事件是一项具有挑战性的任务。最直接但并不推荐的方法是使用全局变量。虽然这种方法简单易用,但它会导致命名冲突,难以维护,且全局变量的值容易在不知情的情况下被意外修改。另一种常见的方式是使用回调函数。在这种情况下,类A会注册类B的回调函数。然而,这种方法的缺点在于对象的声明周期难以控制,经常会出现回调函数触发时,对象已经
- WebRTC实现rtsp流在浏览器中播放
qq_21138747
webrtc前端
一般诸如海康威视,大华等监控视频流都是推送的rtsp或rtmp流,这些都是无法在浏览器中直接播放的。因此出现了以下几种方法实现在浏览器端播放。处理该问题的主流方法大概分为以下几种PS(由于浏览器的更迭以及Flash不在被支持,所以依赖IE和Flash的方法如使用IE浏览器配合VLC插件,通过video.js配合Flash实现网页播放此处不作介绍)通过Nginx+ffmpeg+nginx-http-
- 小学英语音标教学方法汇总
8ee5a129b0e4
英语新课程要求小学生掌握的单词量很大,如果不教音标,不教给学生正确记忆单词的方法,只让学生跟着老师反复读记,那么学生记单词的效率会比较低下,而且会很容易遗忘。音标教学比较单调,那些枯燥的语音符号会使学生望而生畏。下面,沪江小编就为大家介绍几个小学音标的教学方法。一、化整为零,反复练习在学生初学英语时,我没有将音标集中出现,而是将音标教学和单词教学有机的融合在一起。每当教学一个新单词时,我就将单词中
- 原生html+js播放flv直播视频流【vue等皆可用】
Odinpeng
javascripthtmlvue.jswebrtc
一、前言最近着手了一个新需求:将某记录仪的实时视频在页面展现。实现步骤:通过WebRtc将直播视频转码为flv/rtsp格式流;通过Vlc或代码中的视频播放器播放视频。常见播放flv直播视频流软件如:VLC、PotPlayer等,好用但无法嵌入代码。在此介绍一种使用原生html+js即可实现直播视频流播放的方式,内网外网皆可用。二、实现引入Bilibili开源Flash视频(FLV)播放器方式一:
- 推荐Monibuca/webrtc插件:新一代实时通信解决方案
戴洵珠Gerald
推荐Monibuca/webrtc插件:新一代实时通信解决方案项目简介Monibuca/plugin-webrtc是基于Monibuca框架的一个WebRTC插件,旨在提供高效、稳定且可定制化的实时通信服务。此项目将WebRTC的强大功能与Monibuca的模块化设计相结合,使开发者能够轻松构建视频会议、直播互动、在线教育等实时应用。技术分析Monibuca框架Monibuca是一个高度模块化和可
- SpringBoot日志使用:Slf4j与Logback
I like Code?
springbootlogbackjava
步骤一:引入lombok即可,lombok自带@Slf4j注解(网上说不用引入api的依赖,若报错可添加)org.projectlomboklombok1.18.30providedorg.slf4jslf4j-api1.7.30ch.qos.logbacklogback-classic1.2.11步骤二:编写logback.xml%d{yyyy-MM-ddHH:mm:ss}[%thread]%-
- logback日志配置获取服务器名称/ip/pid/端口
七离_82cd
1、获取服务器名称/ip/pid/端口方法详见:https://www.jianshu.com/p/346f9f50ac882、创建一个类继承自ch.qos.logback.classic.pattern.ClassicConverter,重写方法:@OverridepublicStringconvert(ILoggingEventevent){}3、在logback-spring.xml文件里加
- 【AR.js】初步认识与官方示例的使用
o0o_-_
ARarjavascript开发语言
说在前面测试浏览器:MicrosoftEdge(PC版本97.0.1072.55)/Firefox(Android)github库:AR.jsAR系列文章:这里go版本:goversiongo1.17.3windows/amd64其他:本文的关注点在于官方用例。关于AR.js这里他们有三种实现:基于标记、基于特征点、以及基于地理位置;前面两种差不大多。优点:只要有支持webrtc以及webgl的浏
- AR.js 开发与使用指南
Hello.Reader
javascript前端arjavascript开发语言
1.AR.js简介AR.js是基于Web技术的AR库,依赖于WebGL和WebRTC,可以在大多数现代浏览器上运行。它的主要优势在于不需要安装任何插件或应用程序,用户只需通过浏览器即可体验AR效果。AR.js提供了Marker-based(基于标记的)和Location-based(基于位置的)两种模式,适用于多种场景。2.环境搭建在开始开发之前,我们需要先搭建开发环境。以下是搭建AR.js开发环
- SpringMVC接收返回值方法汇总
码来码去(未来可期)
JavaWebjava
传统方式@RequestMapping("/param01")publicStringparam01(HttpServletRequestrequest)throwsUnsupportedEncodingException{request.setCharacterEncoding("UTF-8");Stringid=request.getParameter("id");request.setAtt
- JS 获取当前时间戳方法汇总
TTong___
javascript开发语言ecmascript
js获取当前时间戳的5种方法1.获取时间戳精确到秒,13位consttimestamp=Date.parse(newDate());console.log(timestamp);//输出159166925600013位2.获取时间戳精确到毫秒,13位consttimestamp=Math.round(newDate());console.log(timestamp);//输出15916699612
- ARM/Linux嵌入式面经(十八):TP-Link联洲
TrustZone_Hcoco
ARM/Linux嵌入式面试arm开发linuxandroid架构嵌入式
文章目录虚拟内存,页表,copyonwrite面试题1:面试题2:面试题3:进程和线程的区别红黑树和b+树的应用红黑树的应用B+树的应用视频会议用了哪些协议1.H.323协议2.SIP协议(会话发起协议)3.WebRTC(网页实时通信)4.其他协议io多路复用(select,poll,epoll)面试题linux软连接和硬链接区别1.链接方式2.存储空间3.跨文件系统4.链接对象5.删除行为6.命
- Java日志(slf4j+logback)及打印彩色日志
Luck_ZZ
javaslf4jlogback配置彩色日志
一、maven依赖在pom文件增加slf4j+logback依赖1.7.211.1.7org.slf4jslf4j-api${slf4j.version}ch.qos.logbacklogback-classic${logback.version}ch.qos.logbacklogback-core${logback.version}二、logback配置文件在类路径下建logback.xml${
- H5判断当前移动端是横屏还是竖屏的方法汇总
迷途小码农零零发
前端常见javascript前端vue.jsreact.js
在H5页面中,可以通过以下几种方法判断当前设备是横屏还是竖屏:方法一:使用window.orientationwindow.orientation属性返回当前设备的旋转角度。常见的值有:0或180表示竖屏90或-90表示横屏functionisLandscape(){returnwindow.orientation===90||window.orientation===-90;}if(isLand
- 【MQTT协议与IoT通信】MQTT协议的使用和管理
爱技术的小伙子
人工智能物联网servlet人工智能
MQTT协议与IoT通信:MQTT协议的使用和管理目录引言MQTT协议概述什么是MQTTMQTT的工作原理MQTT协议的关键特性轻量级与高效性发布/订阅模式质量服务等级(QoS)持久会话安全性MQTT协议的使用方法设置MQTTBroker连接MQTTClient发布消息订阅主题断开连接MQTT协议的管理监控与维护优化性能确保安全MQTT协议的应用案例智能家居工业自动化智慧城市远程医疗结论引言随着物
- Java实现的简单双向Map,支持重复Value
superlxw1234
java双向map
关键字:Java双向Map、DualHashBidiMap
有个需求,需要根据即时修改Map结构中的Value值,比如,将Map中所有value=V1的记录改成value=V2,key保持不变。
数据量比较大,遍历Map性能太差,这就需要根据Value先找到Key,然后去修改。
即:既要根据Key找Value,又要根据Value
- PL/SQL触发器基础及例子
百合不是茶
oracle数据库触发器PL/SQL编程
触发器的简介;
触发器的定义就是说某个条件成立的时候,触发器里面所定义的语句就会被自动的执行。因此触发器不需要人为的去调用,也不能调用。触发器和过程函数类似 过程函数必须要调用,
一个表中最多只能有12个触发器类型的,触发器和过程函数相似 触发器不需要调用直接执行,
触发时间:指明触发器何时执行,该值可取:
before:表示在数据库动作之前触发
- [时空与探索]穿越时空的一些问题
comsci
问题
我们还没有进行过任何数学形式上的证明,仅仅是一个猜想.....
这个猜想就是; 任何有质量的物体(哪怕只有一微克)都不可能穿越时空,该物体强行穿越时空的时候,物体的质量会与时空粒子产生反应,物体会变成暗物质,也就是说,任何物体穿越时空会变成暗物质..(暗物质就我的理
- easy ui datagrid上移下移一行
商人shang
js上移下移easyuidatagrid
/**
* 向上移动一行
*
* @param dg
* @param row
*/
function moveupRow(dg, row) {
var datagrid = $(dg);
var index = datagrid.datagrid("getRowIndex", row);
if (isFirstRow(dg, row)) {
- Java反射
oloz
反射
本人菜鸟,今天恰好有时间,写写博客,总结复习一下java反射方面的知识,欢迎大家探讨交流学习指教
首先看看java中的Class
package demo;
public class ClassTest {
/*先了解java中的Class*/
public static void main(String[] args) {
//任何一个类都
- springMVC 使用JSR-303 Validation验证
杨白白
springmvc
JSR-303是一个数据验证的规范,但是spring并没有对其进行实现,Hibernate Validator是实现了这一规范的,通过此这个实现来讲SpringMVC对JSR-303的支持。
JSR-303的校验是基于注解的,首先要把这些注解标记在需要验证的实体类的属性上或是其对应的get方法上。
登录需要验证类
public class Login {
@NotEmpty
- log4j
香水浓
log4j
log4j.rootCategory=DEBUG, STDOUT, DAILYFILE, HTML, DATABASE
#log4j.rootCategory=DEBUG, STDOUT, DAILYFILE, ROLLINGFILE, HTML
#console
log4j.appender.STDOUT=org.apache.log4j.ConsoleAppender
log4
- 使用ajax和history.pushState无刷新改变页面URL
agevs
jquery框架Ajaxhtml5chrome
表现
如果你使用chrome或者firefox等浏览器访问本博客、github.com、plus.google.com等网站时,细心的你会发现页面之间的点击是通过ajax异步请求的,同时页面的URL发生了了改变。并且能够很好的支持浏览器前进和后退。
是什么有这么强大的功能呢?
HTML5里引用了新的API,history.pushState和history.replaceState,就是通过
- centos中文乱码
AILIKES
centosOSssh
一、CentOS系统访问 g.cn ,发现中文乱码。
于是用以前的方式:yum -y install fonts-chinese
CentOS系统安装后,还是不能显示中文字体。我使用 gedit 编辑源码,其中文注释也为乱码。
后来,终于找到以下方法可以解决,需要两个中文支持的包:
fonts-chinese-3.02-12.
- 触发器
baalwolf
触发器
触发器(trigger):监视某种情况,并触发某种操作。
触发器创建语法四要素:1.监视地点(table) 2.监视事件(insert/update/delete) 3.触发时间(after/before) 4.触发事件(insert/update/delete)
语法:
create trigger triggerName
after/before 
- JS正则表达式的i m g
bijian1013
JavaScript正则表达式
g:表示全局(global)模式,即模式将被应用于所有字符串,而非在发现第一个匹配项时立即停止。 i:表示不区分大小写(case-insensitive)模式,即在确定匹配项时忽略模式与字符串的大小写。 m:表示
- HTML5模式和Hashbang模式
bijian1013
JavaScriptAngularJSHashbang模式HTML5模式
我们可以用$locationProvider来配置$location服务(可以采用注入的方式,就像AngularJS中其他所有东西一样)。这里provider的两个参数很有意思,介绍如下。
html5Mode
一个布尔值,标识$location服务是否运行在HTML5模式下。
ha
- [Maven学习笔记六]Maven生命周期
bit1129
maven
从mvn test的输出开始说起
当我们在user-core中执行mvn test时,执行的输出如下:
/software/devsoftware/jdk1.7.0_55/bin/java -Dmaven.home=/software/devsoftware/apache-maven-3.2.1 -Dclassworlds.conf=/software/devs
- 【Hadoop七】基于Yarn的Hadoop Map Reduce容错
bit1129
hadoop
运行于Yarn的Map Reduce作业,可能发生失败的点包括
Task Failure
Application Master Failure
Node Manager Failure
Resource Manager Failure
1. Task Failure
任务执行过程中产生的异常和JVM的意外终止会汇报给Application Master。僵死的任务也会被A
- 记一次数据推送的异常解决端口解决
ronin47
记一次数据推送的异常解决
需求:从db获取数据然后推送到B
程序开发完成,上jboss,刚开始报了很多错,逐一解决,可最后显示连接不到数据库。机房的同事说可以ping 通。
自已画了个图,逐一排除,把linux 防火墙 和 setenforce 设置最低。
service iptables stop
- 巧用视错觉-UI更有趣
brotherlamp
UIui视频ui教程ui自学ui资料
我们每个人在生活中都曾感受过视错觉(optical illusion)的魅力。
视错觉现象是双眼跟我们开的一个玩笑,而我们往往还心甘情愿地接受我们看到的假象。其实不止如此,视觉错现象的背后还有一个重要的科学原理——格式塔原理。
格式塔原理解释了人们如何以视觉方式感觉物体,以及图像的结构,视角,大小等要素是如何影响我们的视觉的。
在下面这篇文章中,我们首先会简单介绍一下格式塔原理中的基本概念,
- 线段树-poj1177-N个矩形求边长(离散化+扫描线)
bylijinnan
数据结构算法线段树
package com.ljn.base;
import java.util.Arrays;
import java.util.Comparator;
import java.util.Set;
import java.util.TreeSet;
/**
* POJ 1177 (线段树+离散化+扫描线),题目链接为http://poj.org/problem?id=1177
- HTTP协议详解
chicony
http协议
引言
- Scala设计模式
chenchao051
设计模式scala
Scala设计模式
我的话: 在国外网站上看到一篇文章,里面详细描述了很多设计模式,并且用Java及Scala两种语言描述,清晰的让我们看到各种常规的设计模式,在Scala中是如何在语言特性层面直接支持的。基于文章很nice,我利用今天的空闲时间将其翻译,希望大家能一起学习,讨论。翻译
- 安装mysql
daizj
mysql安装
安装mysql
(1)删除linux上已经安装的mysql相关库信息。rpm -e xxxxxxx --nodeps (强制删除)
执行命令rpm -qa |grep mysql 检查是否删除干净
(2)执行命令 rpm -i MySQL-server-5.5.31-2.el
- HTTP状态码大全
dcj3sjt126com
http状态码
完整的 HTTP 1.1规范说明书来自于RFC 2616,你可以在http://www.talentdigger.cn/home/link.php?url=d3d3LnJmYy1lZGl0b3Iub3JnLw%3D%3D在线查阅。HTTP 1.1的状态码被标记为新特性,因为许多浏览器只支持 HTTP 1.0。你应只把状态码发送给支持 HTTP 1.1的客户端,支持协议版本可以通过调用request
- asihttprequest上传图片
dcj3sjt126com
ASIHTTPRequest
NSURL *url =@"yourURL";
ASIFormDataRequest*currentRequest =[ASIFormDataRequest requestWithURL:url];
[currentRequest setPostFormat:ASIMultipartFormDataPostFormat];[currentRequest se
- C语言中,关键字static的作用
e200702084
C++cC#
在C语言中,关键字static有三个明显的作用:
1)在函数体,局部的static变量。生存期为程序的整个生命周期,(它存活多长时间);作用域却在函数体内(它在什么地方能被访问(空间))。
一个被声明为静态的变量在这一函数被调用过程中维持其值不变。因为它分配在静态存储区,函数调用结束后并不释放单元,但是在其它的作用域的无法访问。当再次调用这个函数时,这个局部的静态变量还存活,而且用在它的访
- win7/8使用curl
geeksun
win7
1. WIN7/8下要使用curl,需要下载curl-7.20.0-win64-ssl-sspi.zip和Win64OpenSSL_Light-1_0_2d.exe。 下载地址:
http://curl.haxx.se/download.html 请选择不带SSL的版本,否则还需要安装SSL的支持包 2. 可以给Windows增加c
- Creating a Shared Repository; Users Sharing The Repository
hongtoushizi
git
转载自:
http://www.gitguys.com/topics/creating-a-shared-repository-users-sharing-the-repository/ Commands discussed in this section:
git init –bare
git clone
git remote
git pull
git p
- Java实现字符串反转的8种或9种方法
Josh_Persistence
异或反转递归反转二分交换反转java字符串反转栈反转
注:对于第7种使用异或的方式来实现字符串的反转,如果不太看得明白的,可以参照另一篇博客:
http://josh-persistence.iteye.com/blog/2205768
/**
*
*/
package com.wsheng.aggregator.algorithm.string;
import java.util.Stack;
/**
- 代码实现任意容量倒水问题
home198979
PHP算法倒水
形象化设计模式实战 HELLO!架构 redis命令源码解析
倒水问题:有两个杯子,一个A升,一个B升,水有无限多,现要求利用这两杯子装C
- Druid datasource
zhb8015
druid
推荐大家使用数据库连接池 DruidDataSource. http://code.alibabatech.com/wiki/display/Druid/DruidDataSource DruidDataSource经过阿里巴巴数百个应用一年多生产环境运行验证,稳定可靠。 它最重要的特点是:监控、扩展和性能。 下载和Maven配置看这里: http
- 两种启动监听器ApplicationListener和ServletContextListener
spjich
javaspring框架
引言:有时候需要在项目初始化的时候进行一系列工作,比如初始化一个线程池,初始化配置文件,初始化缓存等等,这时候就需要用到启动监听器,下面分别介绍一下两种常用的项目启动监听器
ServletContextListener
特点: 依赖于sevlet容器,需要配置web.xml
使用方法:
public class StartListener implements
- JavaScript Rounding Methods of the Math object
何不笑
JavaScriptMath
The next group of methods has to do with rounding decimal values into integers. Three methods — Math.ceil(), Math.floor(), and Math.round() — handle rounding in differen