- 【AI成长会】针对高并发场景下基于用户ID的聊天接口优化方案,包含5个核心方法
以下是针对高并发场景下基于用户ID的聊天接口优化方案,包含5个核心方法、对比表格及权威来源:5大优化方案1.索引优化机制:对user_id字段添加B+树索引,联合查询字段使用覆盖索引(如(user_id,timestamp))优化点:减少全表扫描,提升索引命中率适用场景:基础优化,所有规模均需2.缓存层引入(Redis/Memcached)机制:使用Redis存储用户最近聊天记录(Key:user
- Ehcache、Caffeine、Spring Cache、Redis、J2Cache、Memcached 和 Guava Cache 的主要区别
MonkeyKing.sun
springredismemcached
主流缓存技术Ehcache、Caffeine、SpringCache、Redis、J2Cache、Memcached和GuavaCache的主要区别,涵盖其架构、功能、适用场景和优缺点等方面:Ehcache类型:本地缓存(JVM内存缓存)特点:轻量级,运行在JVM内部,易于集成到Java应用中。支持堆内、堆外和磁盘缓存,适合处理中小型数据集。提供丰富的缓存配置,如TTL(生存时间)、TTI(空闲时
- [redis系列] redis数据结构—命令篇
en-route
redis
本redis系列文章集合https://blog.csdn.net/home_liang/article/details/148634904介绍redis的key是字符串类型,而value可以是字符串类型(memcached仅支持这一种类型)、列表类型、散列类型、集合类型、有序集合类型等等.开发环境#redisversion:7.4.2#pythonversion:3.11#redis-pyver
- 2025年T级DDoS攻防实战全解析:头部企业如何抵御每秒3TB流量冲击?
上海云盾商务经理杨杨
ddos
一、2025年T级攻击的新特征AI驱动的自适应攻击攻击者利用生成式AI动态调整流量特征(如模拟真实用户操作轨迹),绕过传统规则引擎,攻击流量与正常流量差异率低至0.5%。混合攻击常态化结合传输层(UDP反射、SYNFlood)与应用层(HTTP慢速攻击)的多维打击,占比超70%。典型案例:某交易所遭遇2.8TbpsMemcached反射攻击,同时并发50万QPSCC攻击。物联网僵尸网络爆发黑客劫持
- Web 架构之缓存策略实战:从本地缓存到分布式缓存
互联网搬砖工老肖
web架构原力计划前端架构缓存
文章目录一、思维导图二、正文内容(一)本地缓存1.简介2.常见实现3.使用场景4.优缺点(二)分布式缓存1.简介2.常见实现3.使用场景4.优缺点5.缓存问题及解决方案三、总结一、思维导图缓存策略实战本地缓存分布式缓存简介常见实现使用场景优缺点GuavaCacheCaffeine简介常见实现使用场景优缺点RedisMemcached缓存穿透缓存击穿缓存雪崩解决方案解决方案解决方案二、正文内容(一)
- 在 Windows 11 或 10 上使用命令提示符安装 Apache、PHP 和 MySQL
山岚的运维笔记
windows使用技巧windowsapachephpmysql
您是Windows11或10用户,想要在LAMP服务器上创建和测试PHP网站,但不想使用Linux操作系统、WSL、XAMPP或WAMP应用程序吗?如果是这样,那么您肯定想知道如何使用命令提示符或PowerShell安装Apache、PHP和MySQL的简单步骤。LAMP堆栈代表Linux(任何发行版)、Apache、MySQL和PHP——这是在Web开发中常用的一组开源软件。但既然我们这里不使用
- 分布式Session处理的五大主流方案解析
代码的余温
分布式Session
在分布式环境下,Session处理的核心挑战是确保用户请求在不同服务器间流转时能保持会话状态一致。以下是主流解决方案及优缺点分析:一、集中存储方案(主流推荐)Redis/Memcached存储原理:将Session数据集中存储于分布式缓存(如Redis),所有服务节点从同一存储读写Session。优点:支持水平扩展,无单点故障风险服务器重启Session不丢失跨平台兼容(Web/APP)缺点:引入
- 面试必备!Redis面试题合集
hao_kkkkk
Java面试专栏面试redis职场和发展
目录1.Redis简介2.分布式缓存常见的技术选型方案有哪些?3.说一下Redis和Memcached的区别和共同点4.缓存数据的处理流程是怎样的?5.为什么要用Redis/为什么要用缓存?6.Redis常见数据结构以及使用场景分析6.1.string6.2.list6.3.hash6.4.set6.5.sortedset6.6bitmap7.Redis单线程模型详解8.Redis没有使用多线程?
- Redis----数据结构
码破苍穹ovo
《码破苍穹の八股文修炼手册》redis数据库缓存
一.认识Redis什么是Redis一款基于内存的非关系型数据库,对数据的读写操作都是在内存中完成的,具有高性能高并发的特点,可以用来作为缓存降低mysql数据库的压力,还可以用来做分布式锁以及轻量级消息队列等与Memcached的区别具备许多Memcached不具备的功能,多种可满足不同需求的数据类型,数据持久化,原生集群为什么用Redis作为MySQL的缓存Redis具有高性能与高并发的特性可以
- Centos7手动安装OpenStack(Stein版)
BluePROT
云计算openstack云端云服务云安全
文章目录准备基础服务网络库数据库Toomanyconnectionsmemcache消息队列rabbitmqkeystone创建域、项目,用户和角色验证脚本glance准备安装配置镜像Placement基础安装配置验证Nova控制节点基础安装配置计算节点控制节点上加入计算节点验证Cinder控制节点基础安装配置计算节点配置存储节点基础虚拟机物理机安装配置备份服务验证Neutron控制节点基础安装配
- memcached php mysql_Docker快速搭建一套PHP、Nginx、MySQL、Redis、Xdebug、Memcached 开发环境并演进...
孟祥静13954548286
memcachedphpmysql
痛点如何简单迅速地初始化一个全新的PHP开发环境呢?笔者在尝试起一个新web项目时,往往会陷入重新建立一套Docker环境的繁琐事当中。我想大家在开始做一个新项目时,或者快速为了和以前的项目做完全的隔离,也会起一套新docker环境。从这篇文章你会得到采用docker-compose容器编排技术,一步启动全部服务。php容器在官方的基础上还打包了一些常用拓展(附带build源码,动手能力强可以自己
- 【部署优化篇十二】《手把手拆解DeepSeek缓存策略:Redis vs Memcached 性能对决万字长文(附代码实战)》
再见孙悟空_
「2025DeepSeek技术全景实战」人工智能DeepSeekDeepSeek强化学习计算机视觉深度学习memcachedDeepSeek缓存
缓存系统选型有多难?就像在自助餐厅选餐具——用筷子(Redis)还是刀叉(Memcached)全看你要吃什么菜!今天咱们就掰开揉碎讲讲这两个缓存界扛把子的底层原理和性能玄学,保证让你选型时不再纠结。一、缓存双雄的基因差异(五分钟看懂本质)1.1设计哲学之争Memcached像个直男程序员:简单粗暴的键值对存储,专注缓存基础功能(参考)#Memcached典型操作importmemcachemc=m
- php5.5 连接SQL SERVER 【环境配置及DLL文件可下载】 -原创
紫气东来_999
phpweb杂
php5.3及以上不能使用旧的代码连接方式了。需要使用PDO或者SQLSVR(微软的DLL)很多安装了WAMP以后,下载官方3.0版本的DLL覆盖以后,提示不是有效32位程序。经测试,微软最新发布的microsoftDrivers3.1forPHPforSQLServer仅支持32位的php5.5版本,在win764位系统中安装32位wamp环境可以正常开启扩展,但是安装了64位的wamp环境就不
- Java转Go日记(四十六):go操作memcached
fashia
Go语言学习路程golangmemcached后端go开发语言
go使用memcached需要第三方的驱动库,这里有一个库是memcached作者亲自实现的,代码质量效率肯定会有保障1.1.1.安装gogetgithub.com/bradfitz/gomemcache/memcache1.1.2.使用import"github.com/bradfitz/gomemcache/memcache"1.1.3.栗子(吃的那种)packagemainimport("f
- k8s 1.10.26 一次containerd失败引发kubectl不可用问题
Mr.小海
Linux运维kubernetes容器云原生
k8s1.10.26一次containerd失败引发kubectl不可用问题开机k8s1.10.26时,报以下错误[root@master~]#kubectlgetnoE051508:03:00.9148947993memcache.go:265]couldn'tgetcurrentserverAPIgrouplist:Get"https://192.168.80.50:6443/api?time
- 中间件安全基础:架构中的隐形防线
2501_91895405
网络安全
一、中间件安全的战略定位中间件(Middleware)作为分布式系统的核心枢纽(如Web服务器、消息队列、API网关、缓存系统等),承担协议转换、数据路由、负载均衡等关键职责。其安全漏洞可能导致全链数据泄露或服务瘫痪。攻击面示例:Web服务器(Nginx/Apache)的错误配置暴露管理接口消息队列(Kafka/RabbitMQ)未授权访问引发数据篡改缓存中间件(Redis/Memcached)因
- Memcached 服务搭建和集成使用的详细步骤示例
慧一居士
NoSql非关系型DB架构memcached数据库nosql
以下是Memcached服务搭建和集成使用的详细步骤示例:一、搭建Memcached服务安装MemcachedLinux系统yum安装:执行命令yuminstall-ymemcachedmemcached-devel。源码安装下载源码:wgethttp://www.memcached.org/files/memcached-1.5.17.tar.gz。解压:tarzxfmemcached-1.5.
- Mysql之性能优化的进阶实践与架构拓展
一杯年华@编程空间
mysql性能优化架构
Mysql之性能优化的进阶实践与架构拓展一、前言各位开发者朋友,在技术探索的道路上,我们常常会遇到系统性能瓶颈的挑战,尤其是在高并发场景下,MySQL的优化显得尤为关键。写作本文的初衷,是希望能与大家一同学习进步,深入探讨MySQL性能优化的进阶策略及架构拓展方向。本文将结合实际场景,解析缓存作为基础组件的重要性、HandlerSocket与memcached的高效访问方案,以及MySQL的拓展方
- Java游戏服务器开发流水账(3)游戏数据的缓存简介
wgc2k
#java游戏服务器游戏服务器
简介游戏服务器数据缓存是一种在游戏服务器运行过程中,用于临时存储经常访问的数据的技术手段,旨在提高游戏性能、降低数据库负载以及优化玩家体验。游戏开发中数据的缓存可以使用Java自身的内存也可以使用MemCache,Redis,注意MemCache只支持string类型的键值对。使用数据缓存好处是:提升游戏响应速度:游戏过程中,玩家的各种操作(如登录、移动、战斗等)都需要与服务器进行数据交互。如果每
- 1.多级缓存架构
zizisuo
缓存数据库
目录一、多级缓存基础与核心概念缓存的定义与价值•缓存的应用场景(高并发、低延迟、减轻数据库压力)•多级缓存vs单级缓存的优劣对比多级缓存核心组件•本地缓存(Caffeine、GuavaCache)•分布式缓存(Redis、Memcached)缓存一致性挑战•数据一致性模型(强一致、最终一致)•常见问题:缓存穿透、雪崩、击穿二、多级缓存架构设计模式经典三级缓存模型•L1:JVM堆内缓存(Caffei
- Java中的分布式缓存与Memcached集成实战
rit8432499
缓存java分布式
一、概述分布式缓存是提升系统性能和扩展性的关键技术之一。Memcached作为一种高性能的分布式内存对象缓存系统,在许多场景下被广泛使用。本文将深入探讨如何在Java项目中集成Memcached,实现高效的分布式缓存。二、Memcached简介Memcached是一种高效的分布式内存缓存系统,用于减少数据库负载,加速动态Web应用。它的核心思想是通过内存缓存数据,减少对数据库的直接访问,从而提升系
- Redis高频面试基本问题与知识点整理
张彦峰ZYF
Redis进阶学习与整合分享redis数据库缓存
目录1.单线程的Redis为什么快?2.Redis支持的数据类型(必考)3.Redis和memcached的区别4.Redis在项目中的主要作用是是什么?怎么用的?(必考)5.Redis实现分布式锁的思路方案(必考)6.分析基于Redis的限流器实现7.Redis和DB数据一致性处理(必考)8.Redis的数据过期策略分析(必考)9.Redis的LRU过期策略的具体实现(必考)10.分析Redis
- Memcached主从复制+Keepalived高可用
云教员
memcached数据库缓存
部署memcached数据库服务文章目录部署memcached数据库服务资源列表基础环境一、安装Memcached服务器1.1、安装Libevent1.2、安装Memcached1.3、设置Memcached服务脚本1.4、启动服务监听端口二、安装MemcachedAPI客户端2.1、编译安装Libmemcached2.2、编译安装Memcached扩展2.3、使用PHP的phpize脚本生成配置
- Memcached主主复制 + Keepalived 高可用架构(内附软件包)
weixin_34414650
memcached
Memcached简介Memcached主主复制是指在任意一台Memcached服务器修改数据都会被同步到另外一台,但是MemcachedAPI客户端是无法判断连接到那一台Memcached服务器的,所以需要设置VIP(虚拟IP)地址,提供给MemcachedAPI客户端进行连接。可以使用Keepalived产生VIP地址连接主Memcached服务器,并提供高可用架构。Memcached的复制功
- Memcached主从复制+keepalived高可用架构
weixin_33775572
实现主从复制和高可用的方式Memcached主从复制是指在主Mencached服务器上修改数据都会被同步到其他服务器上,MemcachedAPI客户端是无法判断连接到那一台Memcached服务器,所以需要VIP地址,提供给MemcachedAPI客户端进行连接。可以使用keepaived产生的VIP地址连接主Memcached服务器来完成,并且提供高可用架构。环境准备系统版本:Centos7服务
- pgsql thinkphp5_TP5 连接 postgres 问题
weixin_39983563
pgsqlthinkphp5
问题一:配置修改为pgsql,提示couldnotfinddriver1.tp5下database配置'DB_TYPE'=>'pgsql',2.打开php扩展-》开启php_pgsql.dll,php_pdo_pgsql.dll在wampserverxampp下PHP使用PDO支持postgresqlhttp://blog.csdn.net/yageeart/article/details/667
- redis mget 获取多个key数据
fzysmile
publicfunctionmget(array$keys){if(MEMCACHE_FLAG==2){returnnull;}if(!$this->connect){$this->connect();}$ret=parent::mget($keys);$res=array();$i=0;foreach($keysas$key){if(!isset($ret[$i])){$res[$key]=fa
- Java redis精选面试题
架构师速成记
Java面试指导
1.Redis是一个基于内存的高性能key-value数据库。2.Redis相比memcached有哪些优势:memcached所有的值均是简单的字符串,redis作为其替代者,支持更为丰富的数据类型redis的速度比memcached快很多redis可以持久化其数据3.Redis是单线程redis利用队列技术将并发访问变为串行访问,消除了传统数据库串行控制的开销4.Reids常用5种数据类型st
- Redis 与 Memcache 全面对比:功能、性能与应用场景解析
编程在手天下我有
缓存数据库性能对比数据结构持久化分布式
Redis和Memcache都是常用的内存数据库,以下是它们在多个方面的能力比较:一、数据类型Redis:支持丰富的数据类型,如字符串(String)、哈希(Hash)、列表(List)、集合(Set)、有序集合(SortedSet)等。这使得Redis能满足各种不同的应用场景需求,例如缓存、消息队列、分布式锁、实时数据处理等。Memcache:主要支持简单的键值对数据类型,数据结构较为单一,在一
- 缓存与数据库数据一致性 详解
飞滕人生TYF
数据库缓存数据库
缓存与数据库数据一致性详解在分布式系统中,缓存(如Redis、Memcached)与数据库(如MySQL、PostgreSQL)一起使用是提高系统性能的常用方法。然而,缓存与数据库可能因更新时序、操作失误等原因出现数据不一致的问题,导致数据读取异常,影响用户体验和业务逻辑的正确性。1.缓存与数据库数据不一致的原因先更新数据库,再删除缓存:更新数据库后,如果删除缓存的操作失败或延迟,缓存仍会返回旧数
- jvm调优总结(从基本概念 到 深度优化)
oloz
javajvmjdk虚拟机应用服务器
JVM参数详解:http://www.cnblogs.com/redcreen/archive/2011/05/04/2037057.html
Java虚拟机中,数据类型可以分为两类:基本类型和引用类型。基本类型的变量保存原始值,即:他代表的值就是数值本身;而引用类型的变量保存引用值。“引用值”代表了某个对象的引用,而不是对象本身,对象本身存放在这个引用值所表示的地址的位置。
- 【Scala十六】Scala核心十:柯里化函数
bit1129
scala
本篇文章重点说明什么是函数柯里化,这个语法现象的背后动机是什么,有什么样的应用场景,以及与部分应用函数(Partial Applied Function)之间的联系 1. 什么是柯里化函数
A way to write functions with multiple parameter lists. For instance
def f(x: Int)(y: Int) is a
- HashMap
dalan_123
java
HashMap在java中对很多人来说都是熟的;基于hash表的map接口的非同步实现。允许使用null和null键;同时不能保证元素的顺序;也就是从来都不保证其中的元素的顺序恒久不变。
1、数据结构
在java中,最基本的数据结构无外乎:数组 和 引用(指针),所有的数据结构都可以用这两个来构造,HashMap也不例外,归根到底HashMap就是一个链表散列的数据
- Java Swing如何实时刷新JTextArea,以显示刚才加append的内容
周凡杨
java更新swingJTextArea
在代码中执行完textArea.append("message")后,如果你想让这个更新立刻显示在界面上而不是等swing的主线程返回后刷新,我们一般会在该语句后调用textArea.invalidate()和textArea.repaint()。
问题是这个方法并不能有任何效果,textArea的内容没有任何变化,这或许是swing的一个bug,有一个笨拙的办法可以实现
- servlet或struts的Action处理ajax请求
g21121
servlet
其实处理ajax的请求非常简单,直接看代码就行了:
//如果用的是struts
//HttpServletResponse response = ServletActionContext.getResponse();
// 设置输出为文字流
response.setContentType("text/plain");
// 设置字符集
res
- FineReport的公式编辑框的语法简介
老A不折腾
finereport公式总结
FINEREPORT用到公式的地方非常多,单元格(以=开头的便被解析为公式),条件显示,数据字典,报表填报属性值定义,图表标题,轴定义,页眉页脚,甚至单元格的其他属性中的鼠标悬浮提示内容都可以写公式。
简单的说下自己感觉的公式要注意的几个地方:
1.if语句语法刚接触感觉比较奇怪,if(条件式子,值1,值2),if可以嵌套,if(条件式子1,值1,if(条件式子2,值2,值3)
- linux mysql 数据库乱码的解决办法
墙头上一根草
linuxmysql数据库乱码
linux 上mysql数据库区分大小写的配置
lower_case_table_names=1 1-不区分大小写 0-区分大小写
修改/etc/my.cnf 具体的修改内容如下:
[client]
default-character-set=utf8
[mysqld]
datadir=/var/lib/mysql
socket=/va
- 我的spring学习笔记6-ApplicationContext实例化的参数兼容思想
aijuans
Spring 3
ApplicationContext能读取多个Bean定义文件,方法是:
ApplicationContext appContext = new ClassPathXmlApplicationContext(
new String[]{“bean-config1.xml”,“bean-config2.xml”,“bean-config3.xml”,“bean-config4.xml
- mysql 基准测试之sysbench
annan211
基准测试mysql基准测试MySQL测试sysbench
1 执行如下命令,安装sysbench-0.5:
tar xzvf sysbench-0.5.tar.gz
cd sysbench-0.5
chmod +x autogen.sh
./autogen.sh
./configure --with-mysql --with-mysql-includes=/usr/local/mysql
- sql的复杂查询使用案列与技巧
百合不是茶
oraclesql函数数据分页合并查询
本片博客使用的数据库表是oracle中的scott用户表;
------------------- 自然连接查询
查询 smith 的上司(两种方法)
&
- 深入学习Thread类
bijian1013
javathread多线程java多线程
一. 线程的名字
下面来看一下Thread类的name属性,它的类型是String。它其实就是线程的名字。在Thread类中,有String getName()和void setName(String)两个方法用来设置和获取这个属性的值。
同时,Thr
- JSON串转换成Map以及如何转换到对应的数据类型
bijian1013
javafastjsonnet.sf.json
在实际开发中,难免会碰到JSON串转换成Map的情况,下面来看看这方面的实例。另外,由于fastjson只支持JDK1.5及以上版本,因此在JDK1.4的项目中可以采用net.sf.json来处理。
一.fastjson实例
JsonUtil.java
package com.study;
impor
- 【RPC框架HttpInvoker一】HttpInvoker:Spring自带RPC框架
bit1129
spring
HttpInvoker是Spring原生的RPC调用框架,HttpInvoker同Burlap和Hessian一样,提供了一致的服务Exporter以及客户端的服务代理工厂Bean,这篇文章主要是复制粘贴了Hessian与Spring集成一文,【RPC框架Hessian四】Hessian与Spring集成
在
【RPC框架Hessian二】Hessian 对象序列化和反序列化一文中
- 【Mahout二】基于Mahout CBayes算法的20newsgroup的脚本分析
bit1129
Mahout
#!/bin/bash
#
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information re
- nginx三种获取用户真实ip的方法
ronin47
随着nginx的迅速崛起,越来越多公司将apache更换成nginx. 同时也越来越多人使用nginx作为负载均衡, 并且代理前面可能还加上了CDN加速,但是随之也遇到一个问题:nginx如何获取用户的真实IP地址,如果后端是apache,请跳转到<apache获取用户真实IP地址>,如果是后端真实服务器是nginx,那么继续往下看。
实例环境: 用户IP 120.22.11.11
- java-判断二叉树是不是平衡
bylijinnan
java
参考了
http://zhedahht.blog.163.com/blog/static/25411174201142733927831/
但是用java来实现有一个问题。
由于Java无法像C那样“传递参数的地址,函数返回时能得到参数的值”,唯有新建一个辅助类:AuxClass
import ljn.help.*;
public class BalancedBTree {
- BeanUtils.copyProperties VS PropertyUtils.copyProperties
诸葛不亮
PropertyUtilsBeanUtils
BeanUtils.copyProperties VS PropertyUtils.copyProperties
作为两个bean属性copy的工具类,他们被广泛使用,同时也很容易误用,给人造成困然;比如:昨天发现同事在使用BeanUtils.copyProperties copy有integer类型属性的bean时,没有考虑到会将null转换为0,而后面的业
- [金融与信息安全]最简单的数据结构最安全
comsci
数据结构
现在最流行的数据库的数据存储文件都具有复杂的文件头格式,用操作系统的记事本软件是无法正常浏览的,这样的情况会有什么问题呢?
从信息安全的角度来看,如果我们数据库系统仅仅把这种格式的数据文件做异地备份,如果相同版本的所有数据库管理系统都同时被攻击,那么
- vi区段删除
Cwind
linuxvi区段删除
区段删除是编辑和分析一些冗长的配置文件或日志文件时比较常用的操作。简记下vi区段删除要点备忘。
vi概述
引文中并未将末行模式单独列为一种模式。单不单列并不重要,能区分命令模式与末行模式即可。
vi区段删除步骤:
1. 在末行模式下使用:set nu显示行号
非必须,随光标移动vi右下角也会显示行号,能够正确找到并记录删除开始行
- 清除tomcat缓存的方法总结
dashuaifu
tomcat缓存
用tomcat容器,大家可能会发现这样的问题,修改jsp文件后,但用IE打开 依然是以前的Jsp的页面。
出现这种现象的原因主要是tomcat缓存的原因。
解决办法如下:
在jsp文件头加上
<meta http-equiv="Expires" content="0"> <meta http-equiv="kiben&qu
- 不要盲目的在项目中使用LESS CSS
dcj3sjt126com
Webless
如果你还不知道LESS CSS是什么东西,可以看一下这篇文章,是我一朋友写给新人看的《CSS——LESS》
不可否认,LESS CSS是个强大的工具,它弥补了css没有变量、无法运算等一些“先天缺陷”,但它似乎给我一种错觉,就是为了功能而实现功能。
比如它的引用功能
?
.rounded_corners{
- [入门]更上一层楼
dcj3sjt126com
PHPyii2
更上一层楼
通篇阅读完整个“入门”部分,你就完成了一个完整 Yii 应用的创建。在此过程中你学到了如何实现一些常用功能,例如通过 HTML 表单从用户那获取数据,从数据库中获取数据并以分页形式显示。你还学到了如何通过 Gii 去自动生成代码。使用 Gii 生成代码把 Web 开发中多数繁杂的过程转化为仅仅填写几个表单就行。
本章将介绍一些有助于更好使用 Yii 的资源:
- Apache HttpClient使用详解
eksliang
httpclienthttp协议
Http协议的重要性相信不用我多说了,HttpClient相比传统JDK自带的URLConnection,增加了易用性和灵活性(具体区别,日后我们再讨论),它不仅是客户端发送Http请求变得容易,而且也方便了开发人员测试接口(基于Http协议的),即提高了开发的效率,也方便提高代码的健壮性。因此熟练掌握HttpClient是很重要的必修内容,掌握HttpClient后,相信对于Http协议的了解会
- zxing二维码扫描功能
gundumw100
androidzxing
经常要用到二维码扫描功能
现给出示例代码
import com.google.zxing.WriterException;
import com.zxing.activity.CaptureActivity;
import com.zxing.encoding.EncodingHandler;
import android.app.Activity;
import an
- 纯HTML+CSS带说明的黄色导航菜单
ini
htmlWebhtml5csshovertree
HoverTree带说明的CSS菜单:纯HTML+CSS结构链接带说明的黄色导航
在线体验效果:http://hovertree.com/texiao/css/1.htm代码如下,保存到HTML文件可以看到效果:
<!DOCTYPE html >
<html >
<head>
<title>HoverTree
- fastjson初始化对性能的影响
kane_xie
fastjson序列化
之前在项目中序列化是用thrift,性能一般,而且需要用编译器生成新的类,在序列化和反序列化的时候感觉很繁琐,因此想转到json阵营。对比了jackson,gson等框架之后,决定用fastjson,为什么呢,因为看名字感觉很快。。。
网上的说法:
fastjson 是一个性能很好的 Java 语言实现的 JSON 解析器和生成器,来自阿里巴巴的工程师开发。
- 基于Mybatis封装的增删改查实现通用自动化sql
mengqingyu
DAO
1.基于map或javaBean的增删改查可实现不写dao接口和实现类以及xml,有效的提高开发速度。
2.支持自定义注解包括主键生成、列重复验证、列名、表名等
3.支持批量插入、批量更新、批量删除
<bean id="dynamicSqlSessionTemplate" class="com.mqy.mybatis.support.Dynamic
- js控制input输入框的方法封装(数字,中文,字母,浮点数等)
qifeifei
javascript js
在项目开发的时候,经常有一些输入框,控制输入的格式,而不是等输入好了再去检查格式,格式错了就报错,体验不好。 /** 数字,中文,字母,浮点数(+/-/.) 类型输入限制,只要在input标签上加上 jInput="number,chinese,alphabet,floating" 备注:floating属性只能单独用*/
funct
- java 计时器应用
tangqi609567707
javatimer
mport java.util.TimerTask; import java.util.Calendar; public class MyTask extends TimerTask { private static final int
- erlang输出调用栈信息
wudixiaotie
erlang
在erlang otp的开发中,如果调用第三方的应用,会有有些错误会不打印栈信息,因为有可能第三方应用会catch然后输出自己的错误信息,所以对排查bug有很大的阻碍,这样就要求我们自己打印调用的栈信息。用这个函数:erlang:process_display (self (), backtrace).需要注意这个函数只会输出到标准错误输出。
也可以用这个函数:erlang:get_s