NewLife.XCode是一个有10多年历史的开源数据中间件,支持nfx/netcore,由新生命团队(2002~2019)开发完成并维护至今,以下简称XCode. 整个系列教程会大量结合示例代码和运行日志来进行深入分析,蕴含多年开发经验于其中,代表作有百亿级大数据实时计算项目. 开源地址:https://github.com/NewLifeX/X(求star, 760+) 缓存是一把尖刀,合理使用可大大提升吞吐率! 历史背景 2006年,某某省电网门户卒! 经查,首页某个sql先后执行了8次…
对一些浏览频次多.数据量大的数据,使用缓存会比较好,而对一些浏览频次低,或内容因用户不同的,不太适合使用缓存.   在控制器层面,MVC为我们提供了OutputCacheAttribute特性:在数据层使用缓存,用System.Runtime.Caching是不错的选择.     控制器层面使用OutputCacheAttribute缓存 □ OutputCacheAttribute默认的缓存时间是60秒. [OutputCache(Duration=20, VaryByParam="none&…
在"MVC缓存01,使用控制器缓存或数据层缓存"中,在数据层中可以设置缓存的有效时间.但这个还不够"智能",常常希望在编辑或创建的时候使缓存失效,加载新的数据. □ 思路 1.缓存是以键值<string, object>存放的,在创建缓存的时候,先把IDictionary<int,T>作为缓存内容存储,int为T的主键. 2.EF上下文保存的时候时候把变化保存到数据库,并更新缓存中的内容. ● 先找出上下文中状态为added或modified…
在"MVC缓存01,运用控制器缓存或数据层缓存"中,在数据层中可以设置缓存的有用时刻.但这个还不够"智能",常常期望在修改或创立的时分使缓存失效,加载新的数据. ​ □ 思路 1.缓存是以键值<string, object="">寄存的,在创立缓存的时分,先把IDictionary<int,t>作为缓存内容存储,int为T的主键. 2.EF上下文保留的时分时分把改变保留到数据库,并更新缓存中的内容. ● 先找出上下文中状况…
引言 今天周末,我在家坐着掐指一算,马上又要到一年一度的金九银十招聘季了,国内今年上半年受到 YQ 冲击,金三银四泡汤了,这就直接导致很多今年毕业的同学会和明年毕业的同学一起参加今年下半年的秋招,这个竞争就比较激烈了. 最近后台有一些朋友给我留言,希望我能写写招聘相关的内容,毕竟虽然说是金九银十,但是很多大公司的校招从 7 . 8 月份就开始了. 本来是想写点面试技巧和简历技巧的,但我转念一想,大家都是搞技术的,问题的核心还是技术能力要过关,面试技巧这东西最多只能用作锦上添花,而技术能力过不去,…
刚接触Ecmall的二次开发不久,接到一个任务.很常见的任务,主要是对数据库进行一些操作,其中查询的方法我写成这样: 01 function get_order_data($goods_id) 02 { 03     include_once("gonndb/nmdb.php"); 04     include_once("gonndb/dbinfo.php"); 05       06     $connector = new nmdb($host, $usern…
在MVC中,从控制器到视图,传递数据,可以使用 ViewData 和 ViewBag:同样从视图到控制器,传递数据,可以使用Post,QueryString,或者隐藏域:最后从控制器到控制器,传递数据可以使用TempData. 注意:当然,从控制器到视图,传递数据,还可以使用TempData的. 我们来一一看一下: 1.ViewBag方式,从控制器到视图传递数据: ViewBag is a dynamic property (a new C# 4.0 feature) which means i…
1.实现目标 通过redis缓存数据.(目的不是加快查询的速度,而是减少数据库的负担) 2.所需jar包 注意:jdies和commons-pool两个jar的版本是有对应关系的,注意引入jar包是要配对使用,否则将会报错.因为commons-pooljar的目录根据版本的变化,目录结构会变.前面的版本是org.apache.pool,而后面的版本是org.apache.pool2... style="background-color: #0098dd; color: white; font-s…
.NET MVC控制器向视图传递数据的四种方式: 1.ViewBag  ViewBag.Mvc="mvc"; 2.ViewData ViewBag["Mvc"]="mvc"; 其中ViewBag和ViewData两者之间是共享数据的 3.TempData TempData["Mvc"]="Mvc" TempData也可用于在一次请求中多个Action之间传递数据 4.Model Model其实是ViewDa…
Catalyst揭秘 Day8 Final 外部数据源和缓存系统 今天是Catalyst部分的收官,主要讲一些杂项内容. 外部数据源处理 什么叫外部数据源,是SparkSql自己支持的一些文件格式,以及一些自己自定义格式的文件开发. 让我们从文件的读取api开始,可以看到最终会创建一个DataFrame,当中比较关键的是relation方法. 首先,会以反射方式获取provider. 我们以json文件为例,其provider为json.DefaultSource.可以看到继承自HadoopFs…