SOFA 源码分析 —— 服务引用过程

前言 在前面的 SOFA 源码分析 —— 服务发布过程 文章中,我们分析了 SOFA 的服务发布过程,一个完整的 RPC 除了发布服务,当然还需要引用服务。 So,今天就一起来看看 SOFA 是如何引用服务的。实际上,基础逻辑和我们之前用 Netty 写的 RPC 小 demo 类似。有兴趣可以看看这个 demo—— 自己用 Netty 实现一个简单的 RPC。 示例代码 ConsumerConfig<HelloService> consumerConfig = new ConsumerCon
分类: 其他 发布时间: 04-30 23:47 阅读次数: 6

Oracle面试题

fadsf 4.绑定变量的优缺点及使用场合分别是什么? 优点:能够避免SQL的硬解析以及与之相关的额外开销(SQL语法、语义的分析、逻辑分析、生成较佳的执行计划等开销),提高执行效率。 缺点:如果在表存在数据倾斜、数据分布不均匀列上使用绑定变量,会造成优化器忽略其具体值,导致生成错误低效的执行计划,降低执行效率。 使用场合: OLTP(Online transaction processing联机事务处理)系统:在OLTP系统中SQL语句重复执行频度高,但处理的数据量较少,结果集也相对较小,尤
分类: 其他 发布时间: 04-30 23:47 阅读次数: 7

错误与异常_2-14选择题

单选题 PHP中定义一个文件异常类,实现过程中需要继承的类是?()(选择一项) Exception B File C Try D Catch A
分类: 其他 发布时间: 04-30 23:47 阅读次数: 5

错误与异常2-16编程练习(未完成)

2-16 编程练习 同时捕获自定义类抛出的异常和Exception类即默认抛出的异常。 参考效果图: 任务 1、 自定义一个异常类MyException,并重写父类Exception的toString()方法 2、 定义一个测试类,并在类内定义一个函数, 声明在何时抛出异常 1) 用常量代替异常: const THROW_NONE = 0; const THROW_CUSTOM = 1; const THROW_DEFAULT = 2; 2) 使用switch语句来处理不同异常的抛出 3、捕获
分类: 其他 发布时间: 04-30 23:47 阅读次数: 5

Callable、Future和FutureTask

在前面的文章中我们讲述了创建线程的2种方式,一种是直接继承Thread,另外一种就是实现Runnable接口。   这2种方式都有一个缺陷就是:在执行完任务之后无法获取执行结果。   如果需要获取执行结果,就必须通过共享变量或者使用线程通信的方式来达到效果,这样使用起来就比较麻烦。   而自从Java 1.5开始,就提供了Callable和Future,通过它们可以在任务执行完毕之后得到任务执行结果。   今天我们就来讨论一下Callable、Future和FutureTask三个类的使用方法
分类: 其他 发布时间: 04-30 23:47 阅读次数: 7

使用Lamp构架搭建论坛

今天给大家放个大招,给大家介绍一个使用LAMP构架搭建论坛的小实验,这个可以说是初学者要面对的第一个搭建服务平台类的实验,先提前告诉大家,因为我们搭建这个论坛需要先搭建Apache、MySQL和php服务,然后才能进行论坛的搭建,所以整篇的内容可能会有点多,可能很多看客觉得繁琐,但请大家放心,这里都是必要步骤说明及步骤截图。好了废话不多说了,先来给大家介绍一下论坛搭建的整体过程,首先要搭建Apac
分类: 企业开发 发布时间: 04-30 23:47 阅读次数: 5

错误与异常_2-7选择题

单选题 阅读下列异常处理程序,运行结果是()(选择一项) A open file read file if execute... create a new file close stream... B open file read file file is not exist create a new file C open file read file create a new file close stream... D file
分类: 其他 发布时间: 04-30 23:41 阅读次数: 5

Pytorch(一)

一、Pytorch介绍 Pytorch 是Torch在Python上的衍生物 和Tensorflow相比: Pytorch建立的神经网络是动态的,而Tensorflow建立的神经网络是静态的 Tensorflow的高度工业化,它的底层代码很难看懂 官网:http://pytorch.org/ Pytorch主要有两个模块: 一个是torch,一个是torchvision,torch是主模块,用来搭建神经网络。torchvision是辅模块,有数据库,还有一些已经训练好的神经网络等着你直接用比如
分类: 其他 发布时间: 04-30 23:41 阅读次数: 8

Timer和TimerTask(转载)

 下面内容转载自:   http://blog.csdn.net/xieyuooo/article/details/8607220   其实就Timer来讲就是一个调度器,而TimerTask呢只是一个实现了run方法的一个类,而具体的TimerTask需要由你自己来实现,例如这样: 1 2 3 4 5 6 Timer timer = new Timer(); timer.schedule(new TimerTask() { public void run() { System.out.pri
分类: 其他 发布时间: 04-30 23:41 阅读次数: 5

CRM客户关系管理系统(六)

第六章、排序和搜索功能开发 6.1.排序功能开发 (1)kingadmin_tags.py @register.simple_tag def get_sorted_column(column,sorted_column,forloop): '''排序''' if column in sorted_column: #如果这一列被排序了 #要判断上一次排序是按什么顺序,本次取反 last_sort_index = sorted_col
分类: 其他 发布时间: 04-30 23:41 阅读次数: 6

错误与异常_2-8选择题

单选题 下列嵌套异常处理机制正确的是()(选择一项) A B C D 答案A
分类: 其他 发布时间: 04-30 23:41 阅读次数: 6

Android查缺补漏(线程篇)-- IntentService的源码浅析

本文作者:CodingBlock 文章链接:http://www.cnblogs.com/codingblock/p/8975114.html 在Android中有两个比较容易弄混的概念,Service和Thread,我们都知道这两个东西都可以执行后台任务,但要注意的是Service是跑在主线程中的,如果不做特殊处理是会阻塞主线程的,而IntentService正好弥补了这一点,在《Android查缺补漏--Service和IntentService》这篇博文中已经简单介绍过了IntentSe
分类: 其他 发布时间: 04-30 23:41 阅读次数: 7

用Git将代码上传至GitHub

  第一步:我们需要先创建一个本地的版本库(其实也就是一个文件夹)。 你可以直接右击新建文件夹,也可以右击打开Git bash命令行窗口通过命令来创建。 现在我通过命令行在桌面新建一个TEST文件夹(你也可以在其他任何地方创建这个文件夹),并且进入这个文件夹   第二步:通过命令git init把这个文件夹变成Git可管理的仓库 这时你会发现TEST里面多了个.git文件夹,它是Git用来跟踪和管理版本库的。如果你看不到,是因为它默认是隐藏文件,那你就需要设置一下让隐藏文件可见。   第三步:
分类: 其他 发布时间: 04-30 23:41 阅读次数: 7

CountDownLatch、CyclicBarrier和Semaphore

Java并发编程:CountDownLatch、CyclicBarrier和Semaphore   在java 1.5中,提供了一些非常有用的辅助类来帮助我们进行并发编程,比如CountDownLatch,CyclicBarrier和Semaphore,今天我们就来学习一下这三个辅助类的用法。   以下是本文目录大纲:   一.CountDownLatch用法   二.CyclicBarrier用法   三.Semaphore用法   若有不正之处请多多谅解,并欢迎批评指正。   请尊重作者劳
分类: 其他 发布时间: 04-30 23:41 阅读次数: 5

flask之路由

flask依赖wsgi,实现wsgi的模块:wsgiref,werkzeug,uwsgi 实例化Flask的对象,里面有参数 app = Flask(__name__,template_folder='templates',static_url_path='/xxxxxx') 添加路由的两种方式 1.程序第一次启动起来,是将url和视图一一对应起来 服务器启动,是将url和视图的关系找出来 在flask中添加路由有两种方式,根据装饰器的源码发现的,一般我们用第一种 路由方式一: @a
分类: 其他 发布时间: 04-30 23:41 阅读次数: 6

[2018大华软件创新挑战赛]模拟赛第四题

题目 输入 输出 限制 示例 有一种特殊的正整数(int类型),将数分为两侧,每侧至少有一位数,两侧的每个数字相加相等,请写出判断的方法用来检测是否这种数。 比如:1236,可以拆分为123和6。 输入的第一行指定用例数量T; 用例的第二行输入正整数; 输出是否为特殊的正整数 bool is_magicnum(int number) intput: 2 1232145 4543622 output: 1 1 【实现代码】: 1 #include <stdio.h> 2 3 int re
分类: 其他 发布时间: 04-30 23:41 阅读次数: 6

Postfix 邮件服务 - roundcube webmail

roundcubemail作为web端的邮件客户端。是一个基于浏览器,支持多国语言的IMAP客户端,它的操作界面看起像一个桌面应用程序。它提供一个email客户端应该具备的所有功能,包括MIME支持,地址薄,文件夹操作,信息搜索和拼写检查等。 roundcubemail采用PHP+Ajax开发并且需要MySQL数据库来存储数据。 用户界面采用XHTML+CSS2设计。 roundcubemail可以被其他具有相同功能的软件替代,比如:openwebmail、squireelmail。 1、ro
分类: 其他 发布时间: 04-30 23:41 阅读次数: 6

面向对象第二单元训练总结

一、前言 第二单元的三次作业是很有特点的三次作业。多线程电梯的设计思路和前两次电梯作业迥然不同,导致我花费了大量的时间去重构之前的代码,使其适应多线程电梯的作业要求;文件监视器是一个独立的作业,不像电梯和出租车那样是一个系列,因此写起来没什么包袱,感觉并不困难;出租车调度和多线程电梯写起来感觉比较相似,但出租车几乎没有算法上的难度,因此主要的工作都花费在了如何构建一个好的设计上面。这三次作业之间看起来没有什么关联,但却环环相扣,一步一步加深着我对多线程编程的理解。 我对这三次作业的总体难度评价
分类: 其他 发布时间: 04-30 23:41 阅读次数: 5

Android_ImageView简单实现图片翻转

效果图 1)可以把图像的id存放数组中,利用setImageResource()或setImageDrawable()方法(放在数组中便于循环) 2)已经是第一张图像时,再点击“上一页”,应Toast提示:已经是第一张图像,并不再往前翻;同样,已经是最后一张图像时,再点击“下一页”,应Toast提示:已经是最后一张图像,并不再往后翻。 给出源代码 <?xml version="1.0" encoding="utf-8"?> <FrameLayout xmlns:android="http://
分类: 其他 发布时间: 04-30 23:41 阅读次数: 7

错误与异常_2-10选择题

单选题 阅读下列异常处理程序,要想得到下列运行结果,请在横线上补充正确的代码(选择一项) 运行结果: A throw new Exception(“文件不存在”); getCode() getMessage() getFile() B throw new Exception(“文件不存在”); getMessage() getCode() getFile() C throw new Exception(“文件不存在”); getMessage()
分类: 其他 发布时间: 04-30 23:41 阅读次数: 6