- webRTC入门概览
音视频开发老马
webrtc服务器运维
1.什么是webRTCWebRTC(WebReal-TimeCommunications)是由谷歌开源并推进纳入W3C标准的一项音视频技术,旨在通过点对点的方式,在不借助中间媒介的情况下,实现浏览器之间的实时音视频通信。与Web经典的B/S架构(即浏览器和服务器架构模式)最大的不同是WebRTC的通信不经过服务器,而直接与客户端连接,在节省服务器资源的同时,提高通信效率。2.信令服务器信令(sig
- 【网络编程】EPOLL 事件触发机制的服务器
啟明起鸣
网络服务器运维
文章目录业务拆解EPOLL机制介绍EPOLL的核心变量和函数EPOLL程序流程图C代码实现准备工作服务器代码代码运行效果总结推荐一个零声教育学习教程,个人觉得老师讲得不错,分享给大家:[Linux,Nginx,ZeroMQ,MySQL,Redis,fastdfs,MongoDB,ZK,流媒体,CDN,P2P,K8S,Docker,TCP/IP,协程,DPDK等技术内容,点击立即学习:https:/
- UDP服务器主要是指什么意思?
wanhengidc
udp服务器网络协议
UDP的全称为用户数据报协议,是一种在计算机网络中常用的传输协议,属于是传输层协议,UDP属于是一种无连接的协议,在发送数据信息之前,发送方和接收方不需要建立任何握手连接,主要是用于发送小量数据的实时应用。UDP服务器则是一种基于UDP协议实现的网络服务端程序,能够用来接收、处理和响应客户端发送的UDP数据报,UDP服务器与TCP服务器相比较来说,UDP服务器不需要建立连接,但是也不能够保证数据信
- Netty案例:HTTP服务器开发方案
目录1、需求2、核心设计思路3、代码实现4、部署与测试5、关键功能说明1、需求Netty服务器监听8080端口,支持浏览器访问、信息恢复和资源过滤功能2、核心设计思路HTTP协议处理:使用Netty的HTTP编解码器资源过滤:通过URI分析实现黑白名单状态恢复:利用ChannelHandlerContext维护请求状态安全控制:过滤危险资源类型和路径遍历攻击3、代码实现importio.netty
- Netty案例:WebSocket开发网页版聊天室
熙客
12_计算机网络websocket网络协议网络
目录1、开发流程2、具体代码实现2.1添加依赖(pom.xml)2.2配置文件(application.yml)2.3配置类读取设置2.4Netty服务器实现2.5WebSocket初始化器和处理器2.6SpringBoot启动类2.7HTML5客户端(src/main/resources/static/chat.html)2.8启动与测试1、开发流程创建SpringBoot项目添加Netty依赖
- FinalShell 4:Linux系统SSH连接与远程管理工具应用指南
虾仁芝麻卷
本文还有配套的精品资源,点击获取简介:FinalShell4是专为Linux系统打造的集成化远程管理工具,以其强大的SSH连接功能著称,支持多种操作系统平台。该软件集成了丰富的终端模拟、会话管理、文件传输和性能优化等特性,提高了IT运维的效率和安全性。其内置的脚本支持和实时监控功能进一步加强了服务器管理的自动化和便捷性,使其成为IT专业人员的得力助手。1.SSH连接与安全远程操作SSH(Secur
- JWT认证授权原理和简单实现
风铃喵游
node
1.关于JWT:(1).JWT(jsonwebtoken)是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准(2).JWT的声明一般被用于在身份提供者和服务提供者之间传递被认证的用户身份信息,以便于从资源服务器获取资源。最为常见的场景就是用户登录认证(3).因为数字签名的存在,这些信息是可信的,JWT可以使用HMAC算法或者是RSA的公私密钥对进行签名2.主要的应用场景:(1).身份
- Docker 与 Serverless 架构:无服务器环境下的容器化部署
you的日常
容器技术Docker性能优化实践dockerserverless架构容器
Serverless(无服务器)架构作为云计算领域的革命性范式,以其无需管理服务器、按需付费、自动伸缩的特性,正在改变着应用开发和部署的方式。然而,传统的函数即服务(Function-as-a-Service,FaaS),如AWSLambda,在运行时环境、部署包大小和复杂依赖管理方面存在一定的局限性。幸运的是,Docker容器的出现为Serverless带来了新的活力。容器的强大可移植性和环境一
- js打开word文件相关总结
xixi_666
jsword
打开方法:一.在IE中,可以通过js创建Word.Application,来打开,修改服务器上的文档.varurl="http://localhost/test/a.doc";//直接打开wordvarword=newActiveXObject("Word.Application");word.Visible=true;word.Activate();//打开的word激活房子最前面窗口word.
- CentOS系统新手指导手册
chanalbert
centoslinux运维
一、CentOS系统概述1.1CentOS的诞生与核心价值起源:CentOS(CommunityENTerpriseOperatingSystem)是基于RedHatEnterpriseLinux(RHEL)的开源发行版,由社区维护,提供与RHEL完全兼容的免费企业级Linux系统。特点:稳定性:通过长期支持(LTS)版本(如CentOS7/8)保证系统稳定性。企业级特性:适配服务器、云计算、虚拟
- JavaScript零基础入门速通(完整)
小黄编程快乐屋
javascripthtml5
JavaScript(简称JS)是现代网页开发中不可或缺的编程语言之一。它为网页增加了动态交互性,是一种前端编程语言,用于处理网页上的各种用户行为,如按钮点击、表单提交、页面加载等。它的强大不仅体现在浏览器端,也可以通过Node.js在服务器端运行。本文将详细介绍JavaScript的基础知识,帮助你从零开始掌握这门语言。1.JavaScript简介JavaScript最早由Netscape公司的
- JA3指纹在Web服务器或WAF中集成方案
泡泡以安
爬虫技术服务器安全httpsJA3指纹
一、概述JA3指纹技术可以通过多种方式集成到Web服务器或WAF中,实现对客户端的识别和安全防护。本文档详细介绍各种实现方案。详细请见:JA3指纹介绍二、Nginx集成方案2.1、使用NginxLua模块安装依赖#安装OpenResty(包含Nginx+Lua)wgethttps://openresty.org/download/openresty-1.21.4.1.tar.gztar-xzfop
- HTTP协议详解与深入理解
菜就多练少说
计算机网络http网络协议网络
一、什么是HTTP?HTTP(HyperTextTransferProtocol,超文本传输协议)是互联网上应用最广泛的一种通信协议,它定义了客户端与服务器之间通信的标准规则,主要用于浏览器与服务器之间的数据交换。HTTP是万维网的基础,网页浏览、API调用、数据交互等都基于HTTP协议完成。二、HTTP的基本原理HTTP属于应用层协议,采用请求-响应模式(Request-Response)。基本
- 【Linux】vim工具
nanguochenchuan
Linux操作系统linuxvim运维
Vim简介与应用场景Vim(ViImproved)作为一款源自Unix系统vi编辑器的增强版本,以其独特的模式化编辑和全键盘操作闻名。主要特点包括:轻量级:仅需几MB空间,适合服务器环境高度可定制:通过.vimrc和插件实现个性化配置跨平台:支持Linux、macOS、Windows等系统典型应用场景:服务器远程管理(通过SSH连接时的高效编辑)编程开发(支持300+语言的语法高亮)日志文件分析(
- SSL证书现实中的使用意义
运维ssl证书
SSL证书在现实中的使用意义重大,它是互联网安全通信的基石,主要从数据加密、身份验证、信任建立等多个层面保障网络交互的安全性,以下是详细说明:一、加密传输数据,防止信息泄露与篡改核心作用:通过SSL(SecureSocketsLayer)或TLS(TransportLayerSecurity)协议,对客户端(如浏览器)与服务器之间传输的数据进行加密。例如用户在网站输入的账号密码、银行卡信息、聊天
- C/C++编程 零基础实现TCP协议实现网络通讯
bugg制造员
c语言c++tcp/ip
文章目录一、TCP服务器1.创建TCP服务器需要包含头文件WinSock2.h2.windows上使用网络功能需要开始网络权限3.创建TCP服务端流程1.创建监听socket套接字2.给这个socket绑定一个端口号3.给这个socket开启监听属性4.等待客户端连接5.开始通讯6.关闭连接4.建立循环二、TCP客户端1.创建TCP客户端流程1.创建socket套接字2.连接服务器3.开始通讯4.
- Node.js 安装使用教程
小奇JAVA面试
安装使用教程node.js
一、Node.js简介Node.js是一个基于ChromeV8引擎的JavaScript运行时,允许在服务器端运行JavaScript。它以事件驱动、非阻塞I/O为核心,适合构建高性能的网络服务、API接口、中间层服务器、命令行工具等。二、Node.js安装方式2.1官方安装包(推荐)访问Node.js官网:https://nodejs.org/下载LTS(长期支持)版本安装完成后,在命令行验证:
- 计算机网络 | C++实现TCP/UDP的socket通信
韦德礼
c++tcp/ipudp网络
仅在VC6.0上通过服务器端先运行,客户端向服务器端说”11111”,服务器端每位加1后向客户端说”22222”,双方循环一定次数后通信结束。TCP服务器端程序:TCPSev.cpp#include"stdio.h"#include#include#pragmacomment(lib,"ws2_32.lib")voidintToChar(int&n,char*pBuf);voidmain(){//
- AJAX 安装使用教程
小奇JAVA面试
安装使用教程ajax前端javascript
一、AJAX简介AJAX(AsynchronousJavaScriptandXML)是一种在无需重新加载整个网页的情况下,能够与服务器交换数据并更新部分网页内容的技术。它不是一种新语言,而是使用现有的标准组合:JavaScript+XMLHttpRequest(或Fetch)+HTML+CSS。二、AJAX是否需要安装?不需要单独安装!AJAX是浏览器原生支持的技术,主流浏览器均内置XMLHttp
- Nginx反向代理功能介绍
1、Nginx反向代理主机IPV4地址版本proxy(代理)192.168.110.31/24Rocky-Linux8web-01(主机-01)192.168.110.32/24Rocky-Linux8client(客户端)192.168.110.35/24Rocky-Linux81.1概述1.1.1反向代理功能Nginx反向代理是一种服务,它接收客户端的请求,将请求转发到一个或多个后端服务器,获
- Python连接需要Kerberos认证的Kafka
王大锤V
Pythonpythonkafka
1.安装Kerberos客户端yuminstall-ykrb5-libskrb5-workstation2.准备配置文件jaas.confkrb5.confuser.keytab(kafka.keytab)3.修改hosts文件将kdc服务器的host->ip映射加入hosts文件中4.执行Kerberos认证kinit-ktkafka.keytabkafka5.安装Python第三方库pip3i
- application.yml 文件配置解析
前端小努力
springboot
application.yml文件配置解析application.yml文件是SpringBoot应用程序中用于配置各种属性的主要文件之一。它可以配置的内容非常广泛,包括但不限于以下几类:服务器配置端口号服务器地址会话管理SSL配置数据源配置数据库URL用户名和密码JDBC驱动类名连接池配置JPA和Hibernate配置DDL自动更新策略SQL显示方言配置日志配置日志级别日志文件路径安全性配置基本
- 视频内存太大怎么压缩变小一点?视频压缩的常用方法
这辈子谁会真的心疼你
音视频压缩视频压缩文件
视频传生活或者工作中很常见,如发送视频邮件、在线视频播放、视频上传下载等。未压缩的大内存视频文件传输时,不仅会消耗大量的网络带宽资源,还会使传输时间大幅增加。在网速有限的情况下,发送一个几GB的未压缩视频可能需要数小时甚至更长时间;而压缩后的视频,传输时间会大幅缩短,用户体验得到显著提升。对于在线视频平台,压缩视频能降低服务器压力,使更多用户可以流畅观看视频,减少卡顿现象。下面是一个使用FFmpe
- Linux 系统性能调优技巧:提升服务器效率的实用指南
BlueCat.v
linux服务器运维
摘要本文深入探讨了Linux系统的性能调优技巧,旨在帮助系统管理员和开发人员优化服务器性能。涵盖性能监控工具、内核调优、文件系统优化、网络配置、进程管理、资源管理等多个方面,提供实用的方法和策略,以提高系统的响应速度和处理能力。目录摘要文章结构1.引言2.性能监控工具3.内核调优4.文件系统优化5.网络配置优化6.进程管理7.资源管理文章结构1.引言在现代计算环境中,Linux系统被广泛应用于服务
- C语言与工业自动化控制:PLC编程、Modbus/TCP协议与OPC UA接口(三)
JJJ69
学习C语言吧自动化tcp/ip网络
目录一、C语言与OPCUA接口1.1OPCUA接口简介1.2C语言实现OPCUA客户端/服务器1.3C语言在OPCUA高级特性的支持二、结论2.1总结C语言在工业自动化控制中的关键角色2.2展望未来一、C语言与OPCUA接口1.1OPCUA接口简介OPCUA(OpenPlatformCommunicationsUnifiedArchitecture)是一种开放的、跨平台的工业通信标准,专为实现工业
- 深入理解Python asyncio:从入门到实战,掌握异步编程精髓
Bruce-li__
Pythonpython网络数据库
文章目录前言一、asyncio基础概念1.1什么是异步编程?1.2asyncio核心组件二、asyncio核心用法详解2.1事件循环管理2.2协程与任务2.3异步上下文管理器三、asyncio高级特性3.1异步生成器3.2异步队列3.3异步锁和信号量四、asyncio实战项目4.1高性能Web爬虫4.2异步Web服务器五、性能对比与最佳实践5.1同步与异步性能对比5.2asyncio最佳实践六、常
- Docker-compose搭建(单机/多机)RabbitMQ集群
Ennis.Zhou
dockerdockerrabbitmq容器
一、(单台服务器)docker-compose搭建RabbitMQ集群这里我们提到的是用一台Centos7服务器上用docker搭建的RabbitMQ集群,只能用作测试和练手用。1.环境准备服务器IP容器分配网段容器hostname容器的IP172.17.202.82172.24.0.0/16rabbit1172.24.0.5rabbit2172.24.0.6rabbit3172.24.0.72.
- 离线配置vscode ssh信息
ma1096539894
vscodeide编辑器
1、在有网环境下下载vscode**.exe;并配置ssh插件***;2、将.vscode路径下的extensions。替换到内网同路径下;3、获取内网的vscode唯一id;4、在外网中拼接id;下载对应的https://vscode.download.prss.microsoft.com/dbazure/download/stable/******************/vscode-ser
- ReBEL模型的本地部署与运行,用于三元组抽取任务(事件抽取、知识抽取)
1.服务器CUDA11.72.依赖condacreate-nrebel_envpython=3.10-ycondaactivaterebel_env#安装PyTorch(建议与CUDA11.7配合)pipinstalltorchtorchvisiontorchaudio--index-urlhttps://download.pytorch.org/whl/cu117#安装Transformers和
- 使用sshfs+vscode 在windows远程开发centos6代码
胖大和尚
vscodewindowside
明白了,你的核心需求是:在Windows上使用现代开发工具(如VSCode)开发代码,代码运行在远程的CentOS6上面这个需求是“典型的远程开发场景”,但因为CentOS6很旧,不能用VSCodeRemote-SSH(它需要新版本glibc),所以我们要用兼容性强+开发体验好的替代方案。⸻✅目标:在Windows本地写代码+自动同步到CentOS6+远程编译/运行/调试我为你总结了3套成熟方案,
- HQL之投影查询
归来朝歌
HQLHibernate查询语句投影查询
在HQL查询中,常常面临这样一个场景,对于多表查询,是要将一个表的对象查出来还是要只需要每个表中的几个字段,最后放在一起显示?
针对上面的场景,如果需要将一个对象查出来:
HQL语句写“from 对象”即可
Session session = HibernateUtil.openSession();
- Spring整合redis
bylijinnan
redis
pom.xml
<dependencies>
<!-- Spring Data - Redis Library -->
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-redi
- org.hibernate.NonUniqueResultException: query did not return a unique result: 2
0624chenhong
Hibernate
参考:http://blog.csdn.net/qingfeilee/article/details/7052736
org.hibernate.NonUniqueResultException: query did not return a unique result: 2
在项目中出现了org.hiber
- android动画效果
不懂事的小屁孩
android动画
前几天弄alertdialog和popupwindow的时候,用到了android的动画效果,今天专门研究了一下关于android的动画效果,列出来,方便以后使用。
Android 平台提供了两类动画。 一类是Tween动画,就是对场景里的对象不断的进行图像变化来产生动画效果(旋转、平移、放缩和渐变)。
第二类就是 Frame动画,即顺序的播放事先做好的图像,与gif图片原理类似。
- js delete 删除机理以及它的内存泄露问题的解决方案
换个号韩国红果果
JavaScript
delete删除属性时只是解除了属性与对象的绑定,故当属性值为一个对象时,删除时会造成内存泄露 (其实还未删除)
举例:
var person={name:{firstname:'bob'}}
var p=person.name
delete person.name
p.firstname -->'bob'
// 依然可以访问p.firstname,存在内存泄露
- Oracle将零干预分析加入网络即服务计划
蓝儿唯美
oracle
由Oracle通信技术部门主导的演示项目并没有在本月较早前法国南斯举行的行业集团TM论坛大会中获得嘉奖。但是,Oracle通信官员解雇致力于打造一个支持零干预分配和编制功能的网络即服务(NaaS)平台,帮助企业以更灵活和更适合云的方式实现通信服务提供商(CSP)的连接产品。这个Oracle主导的项目属于TM Forum Live!活动上展示的Catalyst计划的19个项目之一。Catalyst计
- spring学习——springmvc(二)
a-john
springMVC
Spring MVC提供了非常方便的文件上传功能。
1,配置Spring支持文件上传:
DispatcherServlet本身并不知道如何处理multipart的表单数据,需要一个multipart解析器把POST请求的multipart数据中抽取出来,这样DispatcherServlet就能将其传递给我们的控制器了。为了在Spring中注册multipart解析器,需要声明一个实现了Mul
- POJ-2828-Buy Tickets
aijuans
ACM_POJ
POJ-2828-Buy Tickets
http://poj.org/problem?id=2828
线段树,逆序插入
#include<iostream>#include<cstdio>#include<cstring>#include<cstdlib>using namespace std;#define N 200010struct
- Java Ant build.xml详解
asia007
build.xml
1,什么是antant是构建工具2,什么是构建概念到处可查到,形象来说,你要把代码从某个地方拿来,编译,再拷贝到某个地方去等等操作,当然不仅与此,但是主要用来干这个3,ant的好处跨平台 --因为ant是使用java实现的,所以它跨平台使用简单--与ant的兄弟make比起来语法清晰--同样是和make相比功能强大--ant能做的事情很多,可能你用了很久,你仍然不知道它能有
- android按钮监听器的四种技术
百合不是茶
androidxml配置监听器实现接口
android开发中经常会用到各种各样的监听器,android监听器的写法与java又有不同的地方;
1,activity中使用内部类实现接口 ,创建内部类实例 使用add方法 与java类似
创建监听器的实例
myLis lis = new myLis();
使用add方法给按钮添加监听器
- 软件架构师不等同于资深程序员
bijian1013
程序员架构师架构设计
本文的作者Armel Nene是ETAPIX Global公司的首席架构师,他居住在伦敦,他参与过的开源项目包括 Apache Lucene,,Apache Nutch, Liferay 和 Pentaho等。
如今很多的公司
- TeamForge Wiki Syntax & CollabNet User Information Center
sunjing
TeamForgeHow doAttachementAnchorWiki Syntax
the CollabNet user information center http://help.collab.net/
How do I create a new Wiki page?
A CollabNet TeamForge project can have any number of Wiki pages. All Wiki pages are linked, and
- 【Redis四】Redis数据类型
bit1129
redis
概述
Redis是一个高性能的数据结构服务器,称之为数据结构服务器的原因是,它提供了丰富的数据类型以满足不同的应用场景,本文对Redis的数据类型以及对这些类型可能的操作进行总结。
Redis常用的数据类型包括string、set、list、hash以及sorted set.Redis本身是K/V系统,这里的数据类型指的是value的类型,而不是key的类型,key的类型只有一种即string
- SSH2整合-附源码
白糖_
eclipsespringtomcatHibernateGoogle
今天用eclipse终于整合出了struts2+hibernate+spring框架。
我创建的是tomcat项目,需要有tomcat插件。导入项目以后,鼠标右键选择属性,然后再找到“tomcat”项,勾选一下“Is a tomcat project”即可。具体方法见源码里的jsp图片,sql也在源码里。
补充1:项目中部分jar包不是最新版的,可能导
- [转]开源项目代码的学习方法
braveCS
学习方法
转自:
http://blog.sina.com.cn/s/blog_693458530100lk5m.html
http://www.cnblogs.com/west-link/archive/2011/06/07/2074466.html
1)阅读features。以此来搞清楚该项目有哪些特性2)思考。想想如果自己来做有这些features的项目该如何构架3)下载并安装d
- 编程之美-子数组的最大和(二维)
bylijinnan
编程之美
package beautyOfCoding;
import java.util.Arrays;
import java.util.Random;
public class MaxSubArraySum2 {
/**
* 编程之美 子数组之和的最大值(二维)
*/
private static final int ROW = 5;
private stat
- 读书笔记-3
chengxuyuancsdn
jquery笔记resultMap配置ibatis一对多配置
1、resultMap配置
2、ibatis一对多配置
3、jquery笔记
1、resultMap配置
当<select resultMap="topic_data">
<resultMap id="topic_data">必须一一对应。
(1)<resultMap class="tblTopic&q
- [物理与天文]物理学新进展
comsci
如果我们必须获得某种地球上没有的矿石,才能够进行某些能量输出装置的设计和建造,而要获得这种矿石,又必须首先进行深空探测,而要进行深空探测,又必须获得这种能量输出装置,这个矛盾的循环,会导致地球联盟在与宇宙文明建立关系的时候,陷入困境
怎么办呢?
 
- Oracle 11g新特性:Automatic Diagnostic Repository
daizj
oracleADR
Oracle Database 11g的FDI(Fault Diagnosability Infrastructure)是自动化诊断方面的又一增强。
FDI的一个关键组件是自动诊断库(Automatic Diagnostic Repository-ADR)。
在oracle 11g中,alert文件的信息是以xml的文件格式存在的,另外提供了普通文本格式的alert文件。
这两份log文
- 简单排序:选择排序
dieslrae
选择排序
public void selectSort(int[] array){
int select;
for(int i=0;i<array.length;i++){
select = i;
for(int k=i+1;k<array.leng
- C语言学习六指针的经典程序,互换两个数字
dcj3sjt126com
c
示例程序,swap_1和swap_2都是错误的,推理从1开始推到2,2没完成,推到3就完成了
# include <stdio.h>
void swap_1(int, int);
void swap_2(int *, int *);
void swap_3(int *, int *);
int main(void)
{
int a = 3;
int b =
- php 5.4中php-fpm 的重启、终止操作命令
dcj3sjt126com
PHP
php 5.4中php-fpm 的重启、终止操作命令:
查看php运行目录命令:which php/usr/bin/php
查看php-fpm进程数:ps aux | grep -c php-fpm
查看运行内存/usr/bin/php -i|grep mem
重启php-fpm/etc/init.d/php-fpm restart
在phpinfo()输出内容可以看到php
- 线程同步工具类
shuizhaosi888
同步工具类
同步工具类包括信号量(Semaphore)、栅栏(barrier)、闭锁(CountDownLatch)
闭锁(CountDownLatch)
public class RunMain {
public long timeTasks(int nThreads, final Runnable task) throws InterruptedException {
fin
- bleeding edge是什么意思
haojinghua
DI
不止一次,看到很多讲技术的文章里面出现过这个词语。今天终于弄懂了——通过朋友给的浏览软件,上了wiki。
我再一次感到,没有辞典能像WiKi一样,给出这样体贴人心、一清二楚的解释了。为了表达我对WiKi的喜爱,只好在此一一中英对照,给大家上次课。
In computer science, bleeding edge is a term that
- c中实现utf8和gbk的互转
jimmee
ciconvutf8&gbk编码
#include <iconv.h>
#include <stdlib.h>
#include <stdio.h>
#include <unistd.h>
#include <fcntl.h>
#include <string.h>
#include <sys/stat.h>
int code_c
- 大型分布式网站架构设计与实践
lilin530
应用服务器搜索引擎
1.大型网站软件系统的特点?
a.高并发,大流量。
b.高可用。
c.海量数据。
d.用户分布广泛,网络情况复杂。
e.安全环境恶劣。
f.需求快速变更,发布频繁。
g.渐进式发展。
2.大型网站架构演化发展历程?
a.初始阶段的网站架构。
应用程序,数据库,文件等所有的资源都在一台服务器上。
b.应用服务器和数据服务器分离。
c.使用缓存改善网站性能。
d.使用应用
- 在代码中获取Android theme中的attr属性值
OliveExcel
androidtheme
Android的Theme是由各种attr组合而成, 每个attr对应了这个属性的一个引用, 这个引用又可以是各种东西.
在某些情况下, 我们需要获取非自定义的主题下某个属性的内容 (比如拿到系统默认的配色colorAccent), 操作方式举例一则:
int defaultColor = 0xFF000000;
int[] attrsArray = { andorid.r.
- 基于Zookeeper的分布式共享锁
roadrunners
zookeeper分布式共享锁
首先,说说我们的场景,订单服务是做成集群的,当两个以上结点同时收到一个相同订单的创建指令,这时并发就产生了,系统就会重复创建订单。等等......场景。这时,分布式共享锁就闪亮登场了。
共享锁在同一个进程中是很容易实现的,但在跨进程或者在不同Server之间就不好实现了。Zookeeper就很容易实现。具体的实现原理官网和其它网站也有翻译,这里就不在赘述了。
官
- 两个容易被忽略的MySQL知识
tomcat_oracle
mysql
1、varchar(5)可以存储多少个汉字,多少个字母数字? 相信有好多人应该跟我一样,对这个已经很熟悉了,根据经验我们能很快的做出决定,比如说用varchar(200)去存储url等等,但是,即使你用了很多次也很熟悉了,也有可能对上面的问题做出错误的回答。 这个问题我查了好多资料,有的人说是可以存储5个字符,2.5个汉字(每个汉字占用两个字节的话),有的人说这个要区分版本,5.0
- zoj 3827 Information Entropy(水题)
阿尔萨斯
format
题目链接:zoj 3827 Information Entropy
题目大意:三种底,计算和。
解题思路:调用库函数就可以直接算了,不过要注意Pi = 0的时候,不过它题目里居然也讲了。。。limp→0+plogb(p)=0,因为p是logp的高阶。
#include <cstdio>
#include <cstring>
#include <cmath&