- APO全量日志对接logstash和fluent日志采集生态
日志
APO日志介绍采集流程图APO使用ilogtail作为日志采集组件并改造支持额外功能,在vector中进行日志结构化处理。APO日志功能日志指标统计日志数并生成日志数指标。出现错误日志时,计算日志错误指标故障现场日志应用程序出现慢或者错误trace时,将这段时间内的日志收集并写入clickhouse中。使用k8s信息或pid信息关联故障链路和故障现场日志全量日志1.APO日志界面中提供了为不同应用
- APO OneAgent 设计思路
后端
之前的文章介绍过APO是如何使用GrafanaAlloy采集prometheus生态的指标体系。这篇文章介绍APO是如何采集Trace和log的,这两项数据的采集存在以下问题:日志需要配置采集的日志目录,并不是每个应用的日志目录都非常规范,这就导致配置工作量的增加Trace需要配置针对语言的Agent完成数据采集在容器环境不管是修改镜像或者使用initContainer方式,都有挺多配置的工作On
- 红队视角出发的k8s敏感信息收集——Kubernetes API 扩展与未授权访问
周周的奇妙编程
kubernetes容器云原生
针对Kubernetes第三方组件与Operator的详细攻击视角分析,涵盖ServiceMesh、HelmReleases和DatabaseOperators的潜在风险及利用方法。攻击链示例1.攻击者通过未授权的Tiller服务部署恶意HelmChart→2.创建后门Pod并横向移动至Istio控制平面→3.提取Envoy配置发现未加密的数据库服务→4.通过MySQLOperator创建管理员账
- 义父们,支持我兄弟参加CSDN博客之星2024!他是一名优秀的运维工程师!
qq_42856429
运维java开发语言
标题:支持我兄弟参加CSDN博客之星2024!他是一名优秀的运维工程师!大家好,今天想为大家推荐一位非常优秀的技术博主——XMYX-0。他是一名专注于运维领域的开发者,尤其擅长Kubernetes(K8s)和Python自动化运维。他正在参加CSDN博客之星2024活动,希望大家能够为他投上宝贵的一票!为什么支持他?Kubernetes(K8s)领域的深度实践者在K8s领域有着丰富的实战经验。他的
- 从零开始入门 K8s | Kubernetes 网络模型进阶
jishulaozhuanjia
个人博客导航页(点击右侧链接即可打开个人博客):互联网老兵带你入门技术栈本文整理自《CNCFxAlibaba云原生技术公开课》第25讲,点击直达课程页面。关注“阿里巴巴云原生”公众号,回复关键词**“入门”**,即可下载从零入门K8s系列文章PPT。导读:本文将基于之前介绍的基本网络模型,进行更深入的一些了解,希望给予读者一个更广更深的认知。首先简单回顾一下容器网络的历史沿革,剖析一下Kubern
- 从入门到跑路(六)k8s配置ingress-nginx
m0_74825678
面试学习路线阿里巴巴kubernetesnginx容器
Ingress-NGINX是一个基于NGINX的KubernetesIngress控制器,旨在将外部HTTP和HTTPS流量路由到Kubernetes集群中的服务。它是Kubernetes官方推荐的Ingress控制器之一,并且广泛应用于各种生产环境中。Ingress-NGINX介绍主要作用在Kubernetes集群中,Ingress-NGINX的作用是作为IngressController来处理
- 【动态路由】系统Web URL资源整合系列(后端技术实现)【apisix实现】
飞火流星02027
URL整合apisix反向代理apisix网关apisix实现web资源整合系统URL资源整合apisix基于请求参数的路由apisix基于请求头的路由APISIXDashboard
需求说明软件功能需求:反向代理功能(描述:apollo、eureka控、apisix、sentinel、普米、kibana、timetask、grafana、hbase、skywalking-ui、pinpoint、cmak界面、kafka-map、nacos、gateway、elasticsearch、oa-portal业务应用等多个web资源等只能通过有限个代理地址访问),不考虑SSO。软件质
- Kubernetes(K8s)之DNS方案
james二次元
微服务dockerkubernetes容器云原生dnshosts
在使用k8s过程中,有时需要配置自定义的host文件做主机名解析。如果在镜像中修改/etc/hosts文件,而容器启动初始化时,会覆盖掉该文件。就需要利用k8s自身提供的机制解决类似的问题。具体如下:1.hostAliaseshostAliases是Kubernetes中的一项功能,用于在Pod中的/etc/hosts文件中添加自定义主机名与IP地址的映射。这个功能允许开发者为每个Pod手动定义主
- k8s 中的 service 如何找到绑定的 Pod 以及如何实现 Pod 负载均衡
「已注销」
kubernetes负载均衡docker
前言Service资源主要用于为Pod对象提供一个固定、统一的访问接口及负载均衡的能力。service是一组具有相同labelpod集合的抽象,集群内外的各个服务可以通过service进行互相通信。当创建一个service对象时也会对应创建一个endpoint对象,endpoint是用来做容器发现的,service只是将多个pod进行关联,实际的路由转发都是由kubernetes中的kube-pr
- k8s中 pod在delete时过于慢 (小记)
AR_xsy
kuberneteskuberneteslinux
在k8s环境中当删除pod时过于缓慢的处理方式原因:我了解的常见原因就是因为k8s本身的机制,所谓优雅的删除,就会导致慢些,当然如果你公司业务本身设计的很大就另说了,例如做了持久化,有些相关数据库依赖啥的,比如这个业务因为数据量对io性能要求较强,就直接调到redis里,那么你在删除的时候,k8s的机制要做到优雅的删除,那么就会一步一步的删,先清redis,然后再各种你pod业务所依赖的各种东西,
- 【K8S系列】Kubernetes 集群中的网络常见面试题
颜淡慕潇
K8S系列深入解析K8S网络kubernetes云原生集群网络
在Kubernetes面试中,网络是一个重要的主题。理解Kubernetes网络模型、服务发现、网络策略等概念对候选人来说至关重要。以下是一些常见的Kubernetes网络面试题及其答案,帮助你准备面试。1.Kubernetes的网络模型是什么样的?问题:Kubernetes的网络模型是怎样的?答案:Kubernetes网络模型遵循“每个Pod都有一个唯一的IP地址”的原则。每个Pod都可以直接通
- kkfilwview私有化接入方式(k8s)
qq_41369135
kubernetes容器云原生
dev--环境//要预览文件的访问地址(灵活用工举例)varurl='http://xxx.cn/flex-employ-static-dev/enterprise/avatar/1858353535553372160/xxx.png';window.open('http://xxx.com/api/wiat-online-preview/onlinePreview?url='+encodeURI
- ubuntu安装k8s
qq_41369135
ubuntukuberneteslinux
centos:centos:K8Sv1.28.2集群搭建-docker版-一毛丶丶-博客园centos:Kubernetes详细安装教程_kubernetes安装-CSDN博客准备工作:1、主机名解析:确保每台机器的主机名能够被解析(可以通过/etc/hosts或DNS)。#三台机子分别执行sudohostnamectlset-hostnamek8s-mastersudohostnamectlse
- K8S中Deployment控制器的概念、原理解读以及使用技巧
景天科技苑
云原生K8S零基础到进阶实战kubernetes容器云原生deploymentk8s
文章目录1、Deployment控制器1.1Deployment概述1.2Deployment工作原理:如何管理rs和Pod?2、Deployment资源清单文件编写技巧3、查看控制器的历史版本4、自定义滚动更新策略5、K8S自动伸缩6、动态控制副本数量7、生产环境如何实现蓝绿部署?7.1、什么是蓝绿部署?7.2、蓝绿部署的优势和缺点7.3通过k8s实现线上业务的蓝绿部署8、通过k8s完成线上业务
- 15. k8s二进制集群之CoreDNS部署
沙漠绿州(IT追随者)
k8s二进制搭建kubernetes贪心算法dns
为搭建DNS服务需要准备什么?如何下载CoreDNS服务配置文件创建coredns.yaml配置文件(参考原始配置创建)提前准备好CoreDNS镜像资源【可选】如何启动CoreDNS服务当服务异常,如解决coredns启动失败问题总结当我们搭建完k8s集群之后可以为此部署一个DNS提供内部主机或域名解析能力,这里就说到了CoreDNS在Kubenetes起到的作用了。CoreDNS主要为Pod和服
- K8s第一章 搭建集群
R R
kubernetesjavalinux
三台虚拟机分别非192.168.110.126192.168.110.127192.168.110.128关闭防火墙和swap分区systemctlstopfirewalldsystemctldisablefirewalldvi/etc/fstab把最后一行注释掉三台虚拟机相互ping通
- 红队视角出发的k8s敏感信息收集——持久化存储与数据泄露
周周的奇妙编程
kubernetes容器云原生
在Kubernetes集群中,持久化存储卷如同数据的保险箱,承载着应用运行所必需的各类敏感信息。然而,从红队视角出发,这些存储卷也可能成为攻击者觊觎的目标。通过巧妙地利用配置不当或已知漏洞,攻击者能够从中收集到包括密钥、访问凭证在内的大量敏感数据,进而导致数据泄露事件的发生。攻击链示例:攻击者通过容器逃逸进入Pod→发现挂载的EBS卷并创建快照→共享快照至攻击者AWS账户→还原快照窃取数据库凭据→
- Openshift或者K8S上部署xxl-job
RedCong
openshiftkubernetes容器
本案例以版本2.3.0为例1.packagejarbysourcecodesourcecode:https://github.com/xuxueli/xxl-job/blob/2.3.0/2.initmysqldatabasesqlcode:https://github.com/xuxueli/xxl-job/blob/2.3.0/doc/db/tables_xxl_job.sql3.buildi
- k8s集群离线安装kuberay operator
thinkerCoder
kubernetes容器云原生
1,安装方式采用helm安装方式,首先下载对应的helmchart,这里采用v1.2.2版本,下载地址:https://github.com/ray-project/kuberay-helm/releases/tag/kuberay-operator-1.2.22,解压并修改镜像源由于是在内网环境下搭建,因此需要将对应的镜像下载下来,并导入到本地镜像仓库,并修改values.yaml的镜像仓库地址
- Kubernetes 使用自定义资源(CRD)扩展API
zhangj1125
Gokubernetes容器go
K8sCRD即KubernetesCustomResourceDefinition,是Kubernetes提供的一种扩展机制,允许用户在Kubernetes集群中定义和使用自定义的资源类型。通过定义CRD,用户可以在Kubernetes集群中创建、读取、更新和删除自定义资源对象,就像使用原生的Pod、Service等资源一样。本文主要介绍如何使用kubebuilder快速创建自定义资源类型。完成g
- 【Golang学习之旅】Go 语言微服务架构实践(gRPC、Kafka、Docker、K8s)
程序员林北北
架构golang学习微服务云原生kafka
文章目录1.前言:为什么选择Go语言构建微服务架构1.1微服务架构的兴趣与挑战1.2为什么选择Go语言构建微服务架构2.Go语言简介2.1Go语言的特点与应用2.2Go语言的生态系统3.微服务架构中的gRPC实践3.1什么是gRPC?3.2gRPC在Go语言中的实现1.前言:为什么选择Go语言构建微服务架构1.1微服务架构的兴趣与挑战随着互联网技术的飞速发展,尤其是云计算的普及,微服务架构已经成为
- 【Elasticsearch】分片与副本机制:优化数据存储与查询性能
程风破~
ElasticsearchElasticsearch实战elasticsearch大数据搜索引擎
博主简介:CSDN博客专家,历代文学网(PC端可以访问:https://literature.sinhy.com/#/?__c=1000,移动端可微信小程序搜索“历代文学”)总架构师,15年工作经验,精通Java编程,高并发设计,Springboot和微服务,熟悉Linux,ESXI虚拟化以及云原生Docker和K8s,热衷于探索科技的边界,并将理论知识转化为实际应用。保持对新技术的好奇心,乐于分
- Flink-k8s弹性扩缩容原理和部署步骤
spring208208
flinkkubernetes贪心算法
背景和现状目前行内提交flink作业采用Nativekubernetes模式,提交作业时会指定并行度和taskmanager使用的内存及cpu数量。这种情况下会导致在作业运行高峰可能存在资源不足问题运行低峰又会造成资源浪费,这种粗放的使用资源的模式在实时计算业务量不多的时候还可以勉强接受,而随着实时计算业务的增多,则会造成大量的资源浪费和性能瓶颈。为了使存储和计算资源得到更加合理有效的使用,能跟据
- Prometheus+Grafana备忘
dzl84394
springboot学习javaprometheusgrafanalinux
Grafana安装官网https://grafana.com/grafana/download官网提供了几种安装方式,我用最简单的yuminstall-yhttps://dl.grafana.com/enterprise/release/grafana-enterprise-11.2.2-1.x86_64.rpm启动//如果需要在系统启动时自动启动Grafana,可以使用以下命令开启自启动syst
- k8s架构与名词解释
AllanRobinLukeman
dockerk8s华为云
Master:管控集群的管理面节点,提供Kubernetes核心服务和应用程序工作负载的业务流程,对集群进行调度管理。MasterNode由APIServer、Scheduler、ClusterStateStore和Controller-ManagerServer所组成。Node:业务运行的工作节点,用于运行应用程序的容器工作负载。WorkerNode包含kubelet、kubeproxy和Con
- K8S资源限制之resources
是小V呀
k8sk8s云原生资源限制resources
1资源限制介绍K8S设计资源限制的原因主要是为了确保集群的稳定运行、防止资源争用和过载,同时提高应用程序的可靠性和性能。资源限制通过Cgroups等机制控制Pod使用节点资源(CPU、内存、存储)。假设1个节点上有多个pod,其中一个pod使用了所有的资源,那么肯定会影响到到其他pod的运行。2resources介绍resources作用:resources用于定义容器的计算资源请求和限制。这些资
- k8s1.27.7部署higress,代理非k8s集群业务
石头-豆豆
Linux运维k8skubernetes容器云原生higress
一、简介Higress是基于阿里内部的EnvoyGateway实践沉淀、以开源Istio+Envoy为核心构建的云原生API网关,实现了流量网关+微服务网关+安全网关三合一的高集成能力,深度集成Dubbo、Nacos、Sentinel等微服务技术栈,能够帮助用户极大的降低网关的部署及运维成本且能力不打折;在标准上全面支持Ingress与GatewayAPI,积极拥抱云原生下的标准API规范;同时,
- 【云平台监控】Prometheus 监控平台部署与应用
Karoku066
prometheus容器kubernetesdocker运维云原生
文章目录Prometheus监控系统概述TSDB存储引擎特点核心特点生态组件工作流程局限性部署Prometheus1.PrometheusServer部署2.部署Exporters3.部署Grafana4.服务发现Kubernetes集群部署Prometheus和Grafana全流程指南1.环境准备2.部署NodeExporter功能:采集节点资源指标(CPU、内存、磁盘等)步骤:3.部署Prom
- spring cloud k8s kubesphere 灰度发布改造(包含gateway)
山巅
Kubernetes#SpringCloud&Alibabaspringcloudkubernetesgatewaykubesphere灰度发布
Kubernetes如何通过ingress-nginx实现应用灰度发布?在日常的工作中,我们会经常对应用进行发版升级,在互联网公司尤为频繁,主要是为了满足快速的业务发展。我们经常用到的发布方式有滚动更新、蓝绿发布、灰度发布。滚动更新:依次进行新旧替换,直到旧的全部被替换为止。蓝绿发布:两套独立的系统,对外提供服务的称为绿系统,待上线的服务称为蓝系统,当蓝系统里面的应用测试完成后,用户流量接入蓝系统
- c. Grafana插件安装并接入zabbix数据源
Mr. Sun_
『实战-精华篇』grafanazabbixlinux
一、在线安装插件如果不指定插件安装位置,则默认安装位置为/var/lib/grafana/plugins;插件安装后需要重启grafana-server安装zabbix插件alexanderzobnin-zabbix-app#grafana-clipluginsinstallalexanderzobnin-zabbix-app使用--pluginsDir指定安装路径#grafana-cli--pl
- 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