自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(68)
  • 资源 (4)
  • 收藏
  • 关注

原创 原来 CSDN 都是僵尸粉!这很没劲~

CSDN 真的没必要...

2024-03-13 16:41:39 761 8

原创 糟糕~线上服务内存异常了~

那么结合 「图2-3」分析可知,新生代空间太小,需要频繁的Young GC,而当新生代的数据未能来得及释放,将会导致新生代晋升为老年代,这个过程又会加剧STW,最终导致响应超时。随后查看下方的jvm配置,发现新生代内存大小为512m,仅为整体内存的六分之一,而且新生代晋升老年代的GC次数为1 (XX:MaxTenuringThreshold=1)。当时无法排查出进程多占用的1G内存,但是pod oom 的情况,基本是预留给pod的内存不够了,只好再通过升级内存、以及调整JVM配置,给pod多预留写内存。

2024-03-15 09:00:00 855

原创 【方案-技术】可配置化接口降级

【代码】【方案-技术】可配置化接口降级。

2024-03-14 09:00:00 706

原创 【方案-技术】LiteFlow框架实现-推荐搜索流程编排

上面的流程编排后,我们将会解析得到LiteFlow的EL规则配置,该配置会被存在配置中心的数据库中,该EL规则配置是每次访问接口都要获取的,我们不可能每次都查询数据库,所以我们会引入缓存。流程编排通过渠道+坑位表示对应的接口,默认有个根节点,没有任何属性(其实就是串行功能组件),添加子节点时,通过选项选择不同类型的组件进行组装,并且可对选中的组件添加该流程中的自定义入参。是否符合我们的预期呢?比如,我们L4的重排逻辑,会夹杂很多干预、重排的逻辑,任何一个规则都会影响到最终排序,这将导致我们排查问题的难度。

2024-03-13 10:00:00 1209

原创 【方案-分析】流程编排技术选型

内容分发是用户最能感触到的影响,经过多年的发展,覆盖了稿定各类场景的推荐、搜索,以及最近开始接入的花瓣业务线。从技术层面而言,一次用户推荐的请求过程,可以分为以下几个主要步骤:参数设置、L1召回、L2 粗排、 L3 精排、L4 混排,以及其他打压策略、词权重等过程。

2024-03-13 09:00:00 756

原创 【方案-分析】Redis 内网带宽优化

结合上面表格对比后,我们将采用string方式进行序列化,其实,虽然我们是以string的方式序列化,但是我们设置的缓存也都是JSON格式的字符串,只是减少了Redis重复序列化的过程,提高性能。发现APP端在调用接口的时候,会在部分场景上传page_size=1000的方式去拉取数据,分页过大导致的数据集太大,读写缓存的时候,也是缓存IO被占满的原因之一。将模板详情接口拆成两部分,一部分不包含content、一部分是包含content的,主张物尽其用,不浪费,该需要用时才请求。优化内网带宽消耗问题。

2024-03-12 10:28:42 1081

原创 【方案-技术】AIGC 计量系统设计

而流式是逐步返回数据,所以,需要暂时将整个流式数据进行存储到缓冲区,并将流式数据转发回上游服务,实现类似管道的效果,等下游服务商输出完成时,我们才进行归档处理。分析市面上的已知的两款计量系统,我们可以发现各有优缺点,总体来说Helicone与graphsignal两款都会依赖一些SaaS服务,无法完整的私有化部署,会产生部分费用,或者是只支持部分服务商接口、对编程语言有一定的依赖。流式交互归档的数据分为两部分,一部分是流式交互过程中产生的所有数据流,一种是将数据流合并成完整的文本,方便后期查看。

2024-03-12 10:26:01 878 1

原创 【方案-分析】AIGC 计量系统调研

1、可视化请求,包括对话或链接提示2、了解全天延迟如何变化、以及何时达到速率限制3、识别使用成本不成比例的用户4、按OpenAI使用量作为成本分析5、Prompt管理、微调模型或API Keys管理。

2024-03-12 10:20:02 401

原创 线程池原理你知道多少?

程序员成长路上有着不同的阶段,只要你翻过了当时那个阶段,那么你将会有了不一样的收获。很多时候,我们在刚开始面对它们的时候,还看不清,看不透,云里雾里,让人觉得它们很高深。等我们正在的了解它们了之后就觉一切都是那么简单、自然。再努力一下,一切将会不一样!—— 鲁迅前言多线程开发就是这样的一座山,需要我们去克服。说到多线程,大部分新手(作者自己),在面试中谈到多线程就慌了,因为自己在实际工作中真的很少碰到,而且我们多数时候都是在做传统的单体项目开发,说真的,很少会碰到用到多线程的,用都.

2020-05-16 14:03:50 367 1

原创 一分钟扫盲:Java虚拟机运行时数据区

Java虚拟机所管理的内存将会包括以下5个运行时数据区域: 方法区 堆 虚拟机栈 本地方法栈 程序计数器 线程私有:每个线程都会有自己独立的空间,随线程的生命周期而创建和销毁。线程共享:所有线程都能访问到的内存空间,随虚拟机或GC而创建和销毁。1. 程序计数器(Program Counter Register): 是什么:...

2020-04-06 22:41:28 162

原创 面试官:自己如何实现一个Java锁?

在Java中现有的锁有很多,比如:synchronize、ReentrantLock、ReadWriteLock、CountDownLatch、Semaphone等等。如果让我们自己实现一个锁得需要用到什么知识?实现起来难不难呢?今天就让我们一起来尝试下吧!Go~ 首先,我们先来思考下,锁的作用是什么?锁是解决什么问题?...

2020-04-06 22:35:26 1659 3

原创 关于 Gson 的序列化与反序列化分别进行重命名

很多情况下,Json的序列化与反序列化,需要分别对应不同的字段名称,比如说:序列化的时候要求:{user_name:"xxx"}  而反序列化的时候需要 {userName:"xxx"}那么Gson该如何实现? @SerializedName注解(只能放在属性级别,不能放到getter /setter)该注解有两个属性,一个value、一个alternate(备用的意思)。...

2018-08-13 19:08:28 7221 2

原创 Cordova添加android平台时选择安装版本

Cordova添加平台的时候都会有个默认值,一般都是选择最新的版本。我使用的Cordova版本是6.4.0,在进行添加android平台是它给我选了6.0.0版本,当我使用 cordova platform add android 的时候它是成功的帮我创建了android平台的相关代码,但是它报出了一个错误,告诉我说,需要jdk1.8或者更高版本~(我使用的是1.7jdk) 后来才发现是因为Co

2016-12-16 23:55:05 22515

原创 Error: Error setting TTL index on collection : sessions

Error: Error setting TTL index on collection : sessions一、步骤一:这个问题一般是直接升级 mongodb和connect-mongo的版本为最新就可以了。 (注:记得一定要删除掉node_module再重新安装,因为你在package.json中对引用的模块进行改变版本号,也不会更新的,需要删除掉后再重新下载安装,自己就是在这步坑了~~ -

2016-10-24 14:33:50 430

原创 angularjs 指令—— 绑定策略(@、=、&)

angularjs 指令—— 绑定策略(@、=、&) 引入主题背景:angular 的指令配置中的template可以直接使用硬编码写相应的代码,不过也可以根据变量,进行动态更新。那么需要用到那些变量,因用法的不同,所以需要设置合适的绑定策略。一、绑定策略以@ 绑定策略来讲: @ 绑定策略,它的作用就是能把指令配置的独立Scope下变量的值等于根据@绑定的指令属性的值。(指令属性的值可以使

2016-06-18 23:07:40 1519

原创 Angularjs 的 ngInfiniteScroll 的使用方法

Angularjs 的 ngInfiniteScroll 的使用方法一、介绍ngInfiniteScroll 是一个 AngularJS 的扩展指令,实现了网页的无限滚动的功能,也就是相当于页面滚动到最底部的时候自动加载更多内容。二、使用方法引入js库<script type='text/javascript' src='path/to/jquery.min.js'></script><scr

2016-06-18 23:04:04 2945

原创 tomcat 实现多域名指定同一项目

有时候我们需要将多个域名指向同一个项目,那么在tomcat服务器下该如何实现呢?之前查过有人说用多个进行配置来实现这个功能~过程如下: <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="qunasao_access_log

2016-02-17 21:44:59 9281 1

原创 mysql使用“.frm”文件恢复表结构

mysql创建每张表后都会在“mysql安装目录/data/数据库名/”目录下创建一个“表名.frm”文件。该.frm文件并不能直接打开,但是它可以帮助你恢复你的表结构~~具体操作如下:我现在准备恢复clientmanager数据库中的表结构,其中clientmanager数据库中包含了tb_client表。那么我先打开新安装的mysql,并创建一个同名的数据库clientmana

2016-02-12 18:35:43 7464 1

原创 Gesture控制图片缩放&Canvas: trying to use a recycled bitmap android.graphics.Bitmap异常

今天刚学了Gesture手势~就写了一个“根据手势来进行图片缩放”的例子来巩固知识。大致步骤:1. 创建 Activity并且实现OnGestureListener接口2. 定义手势检测器实例等。3. 实现Activity的onTouchEvent()方法,将触控事件交给手势检测器来处理4. 给Activity的ImageView组件设置一张图片5. 实现OnGes

2016-01-31 00:00:39 2481

原创 Fragment在低版本中的简单创建使用

本人菜鸟一枚,也就是对刚学的东西有点自己的理解和想法,所以在这里并不能保证我所理解的是正确的,还望各位看官、大牛帮忙指正~最近正在学习Android的Fragment,因为我的环境是低版本的,所以在这里要用到v4 support兼容包。在这里先说明一下,因为Fragment是3.0版本以后才有的,所以在3.0版本之前的低版本中要使用Fragment,就要引入v4 support兼容包。

2016-01-01 17:15:23 440

原创 关于ibatis insert返回值

ibatis在使用SqlMapClientTemplate的insert(String statementName, Object parameterObject)或insert(String statementName)的插入操作时,会返回一个Object对象,该Object其实就是我们插入时的主键值/*tc-global*//*tc-global*/SELECT s

2015-12-30 17:17:43 12684 2

原创 调用没有在AndroidManifest.xml注册过的Activity,报出的错误提示

2015-12-28 17:43:17 1042

原创 eclipse提示:This tag and its children can be replaced by one &lt;TextView/&gt; and a compound drawable

今天在学习android开发的时候,写了这样的一段代码:xml version="1.0" encoding="utf-8"?>LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layo

2015-12-28 17:40:36 2737

原创 JavaScript的运动框架学习总结

一、目录  1. 入门案例——实现匀速运动  2. 入门案例——实现缓冲运动  3. 实现任意值的运动框架v.1  4. 改进任意值的运动框架v.2    5. 改进任意值的运动框架v.3  6. 实现链式运动框架  7. 实现完美运动框架二、内容  1. 入门案例——实现匀速运动  ①. 要求:只要简单的实现传入的对象和运动的最终目标,便能操作该对象的le

2015-12-28 17:35:15 380

原创 Canvas设置width与height 的问题!

<!--/*阴影跟圆角*/.radiusAndShadow{ border: 1px solid #4E4E4E; -moz-border-radius: 5px; -khtml-border-radius: 5px; -webkit-border-radius: 5px; border-radius: 5px; /*border

2015-12-28 17:32:34 2681

原创 JavaScript 学习—— js获取行间样式和非行间样式

<!--/*阴影跟圆角*/.radiusAndShadow{ border: 1px solid #4E4E4E; -moz-border-radius: 5px; -khtml-border-radius: 5px; -webkit-border-radius: 5px; border-radius: 5px; /*border

2015-12-28 17:29:53 916

原创 Css 学习——left与offsetLeft的区别

<!--/*阴影跟圆角*/.radiusAndShadow{ border: 1px solid #4E4E4E; -moz-border-radius: 5px; -khtml-border-radius: 5px; -webkit-border-radius: 5px; border-radius: 5px; /*border

2015-12-28 17:27:15 738

原创 Java集合 Json集合之间的转换

<!--/*阴影跟圆角*/.radiusAndShadow{ border: 1px solid #4E4E4E; -moz-border-radius: 5px; -khtml-border-radius: 5px; -webkit-border-radius: 5px; border-radius: 5px; /*border

2015-12-28 17:21:54 598

原创 Java对象 json之间的转换(json-lib)

<!--/*阴影跟圆角*/.radiusAndShadow{ border: 1px solid #4E4E4E; -moz-border-radius: 5px; -khtml-border-radius: 5px; -webkit-border-radius: 5px; border-radius: 5px; border:

2015-12-28 17:18:23 322

原创 request.getRequestDispatcher()的两个方法forward()/include()!!!

RequestDispatcher rd = request.getRequestDispatcher("/MyServlet");请求转发: rd.forward( request , response );请求包含: rd.include( request , response );有时一个请求需要多个Servlet协作才能完成,所以需要在一个Servlet跳到另一个Servlet!>一个请求

2015-12-28 17:10:28 1970

原创 JComboBox添加item的赋值类型问题!不一致的话会导致不能更改jcombobox的选择值

在用swing做页面的时候,往往需要设置字体样式,那么,如何用一种方法设置字体之后,在后面的其他页面就不需要再次设置字体了呢?下面这个方法就可以解决了:JComboBox在对它进行添加子项的时候,特别要注意jcomboBox.addItem(Object object);括号里面的值!!如果给它赋了数值,那么以后就要用数值进行设置改变等操作。比如说:   // 声明一个

2015-12-28 17:05:12 1009

原创 关于String的两种赋值方式

String的两种赋值是不同的,String str1=“hello”,指向堆内存中的"hello",而String str2=new String("hello"),因为new开辟的新的堆内存,所以二者地址不同,在用==时,显示的是false。例一: String str1=“Hello”; String str2=“Hello”;

2015-12-28 17:02:33 2111

原创 Java算法题:求素数

题目:判断101-200之间有多少个素数,并输出所有素数。思路:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。具体代码: 1 public Vector exp(int first, int end) { 2 Vector v = new Vector(); 3 boolean

2015-12-28 16:59:52 415

原创 Java算法题:兔子问题

题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第四个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?解题思路: 1 public int exp(int month){ 2 if(month == 1 || month == 2){ 3 return 1; 4

2015-12-28 16:57:15 433

原创 JDBC的复习

前言:因为经常使用框架,现在反而忘了怎么使用JDBC了,所以赶紧复习起来~~1. 快速简单的使用JDBC  ( 以mysql为例 )①. 获取驱动:Class.forName("com.mysql.jdbc.Driver");②. 获取连接:java.sql.Connection con = DriverManager.getConnection("jdbc:mysql://local

2015-12-28 16:54:35 303

原创 JDBCUtils工具类

JdbcUtils.java 1 import java.sql.Connection; 2 import java.sql.SQLException; 3 4 import javax.sql.DataSource; 5 6 import com.mchange.v2.c3p0.ComboPooledDataSource; 7 /** 8 * 依赖:

2015-12-28 16:51:54 1021

原创 装饰者模式对HttpServletRequest进行增强

1 package cn.web.servlet; 2 3 import java.io.UnsupportedEncodingException; 4 5 import javax.servlet.http.HttpServletRequest; 6 import javax.servlet.http.HttpServletRequestWrapper; 7 /**

2015-12-28 16:48:30 820

原创 eclipse进行Debug的时候,发出“java breakpoint unable to install breakpoint”错误

错误情况图:问题的解决方法:直接点击忽略掉:Don't tell me again来自网上的答案~~I had the same error message in Eclipse 3.4.1, SUN JVM1.6.0_07 connected to Tomcat 6.0 (running in debug-mode on a different machine, Sun

2015-12-28 16:45:50 1171

原创 输入法不能使用ctrl+shift进行切换的问题

第一种情况就是,你的输入法只有一种(而且这种输入法并不是“中文(简体) 微软拼音输入法”)。如果是只有一种输入法的话,是无法进行切换的,如果你是想要把输入法切换到无输入法状态,那么你可以通过设置任务栏的语言设置那里(如图1)(图1)按右键进行设置,添加“中文(简体) 微软拼音输入法”。(其实我们平时切换到没有输入法状态是切换到了“中文(简体) 微软拼音输入法”这个输入法。) 第

2015-12-28 16:43:11 2203

原创 SLF4J: Failed to load class &quot;org.slf4j.impl.StaticLoggerBinder&quot;.

最近在学习使用maven的时候,在pom.xml文件中导入了slf4j的引用,当时的pom.xml文件内容是如下:project> dependencies> dependency> groupId>org.slf4jgroupId> artifactId>slf4j-simpleartifactId

2015-12-28 16:40:31 322

ProxifierMac 免破解 2018 最新版本mac 支持mac 10.13.5

ProxifierMac 免破解 2018 最新版本mac 支持mac 10.13.5

2018-07-11

eclipe-maven3-plugin

eclipse-maven3-plugin

2017-08-18

sapjco3.jar mac(64) and windows(64,32)

sapjco3 包含windows32和64位,Mac64位

2017-08-03

gchisto.jar

gchisto.jar 免费下载 使用方法:java -jar gchisto-1.0.1-SNAPSHOT.jar

2016-11-18

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除