首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

dubbo源码学习三——暴露服务exporter、invoker

前面我们知道通过自定义标签,我们可以定位到相关标签的解析,同时梳理出三个重要的bean:ServiceBean、ReferenceBean、ConfigCenterBean。而通过Servicebean,可以看到ServiceConfig中有我们关注的export方法,而通过export,我们可以看到其暴露服务,又分为本地暴露和远程暴露两种,而暴露之前,会进行配置的检查,然后进行url的组装操作,接着进行exporter,而暴露之前,会进行getInvoker操作。而在getInvoker操作中,首先会进行适配,然后进行动态代理模板生成,生成class文件。而export操作中,进入到RegisterProtocol中,export又分为暴露doLocalExport(originInvoker, providerUrl)——>protocol.export(invokerDelegate)——>DubboProtocol#export(Invoker<T> invoker),完成配置的放入map之后,进行服务器开启openServer(url),进行双重校验创建服务器createServer(url)-——> Exchangers.bind(url, requestHandler)——>getExchanger(url).bind(url, handler)——>HanderExchanger#bind(URL url, ExchangeHandler handler)——>Transporters.bind(url, new DecodeHandler(new HeaderExchangeHandler(handler)))——> getTransporter().bind(url, handler)——>NettyTransporter#NettyServer(url, listener)——>NettyServer#doOpen()_——>ServerBootstrap# bind(final SocketAddress localAddress),进行配置的和注册、订阅过程。暴露的过程又是首先进行适配,然后适配之后,进行到dubboProtocol中,进行getInvoker操作。

03

ACS AMI:可溶性聚合物微针联合化疗与抗氧化治疗类风湿性关节炎

类风湿性关节炎(Rheumatoid arthritis,RA) (RA) 是一种慢性炎症性关节疾病。最新的流行病学调查显示,我国RA发病率约为0.42%,病程15年以上的致残率高达61.3%。抗氧化治疗与化学疗法相结合为 RA 治疗提供了广阔的前景,并且非常需要有效地将药物和抗氧化剂输送到 RA 滑膜关节的能力。目前治疗方法主要是通过注射或口服给药,但这对胃肠道有毒副作用等。但皮肤角质层具有平常屏障作用,严重限制了药物的经皮给药效率。为此,深圳大学董海峰教授团队开发了一种可编程聚合物微针 (MN) 平台(图1),用于透皮递送甲氨蝶呤 (MTX) 和活性氧 (ROS) 清除剂用于 RA 治疗。由聚乙烯吡咯烷酮 (PVP) 制成的可生物降解的 MNs 与聚多巴胺/二氧化锰(称为 PDA@MnO 2)和 MTX 结合。插入皮肤组织后,MNs 降解,从而释放负载的 MTX 和 PDA@MnO 2。PDA@MnO 2可用作 RA 滑膜微环境中的 MRI 造影剂,还作为一种强大的抗氧化剂来去除 ROS减少 RA 炎症,当与 MTX 介导的化疗相结合时,可在鼠模型中获得理想的 RA 治疗结果。这项工作不仅代表了一种有价值的 MN 辅助 RA 治疗剂透皮给药方法,而且为 RA 的化学疗法和抗氧化协同治疗开辟了一条新途径。该研究日前发表于ACS Applied Materials & Interfaces上,硕士生武超雄为该论文第一作者,董海峰教授和杨灵芝老师为通讯作者。

02

.NET控件名称缩写一览表「建议收藏」

大家好,又见面了,我是你们的朋友全栈君。标准控件 1 btn Button 2 chk CheckBox 3 ckl CheckedListBox 4 cmb ComboBox 5 dtp DateTimePicker 6 lbl Label 7 llb LinkLabel 8 lst ListBox 9 lvw ListView 10 mtx MaskedTextBox 11 cdr MonthCalendar 12 icn NotifyIcon 13 nud NumeircUpDown 14 pic PictureBox 15 prg ProgressBar 16 rdo RadioButton 17 rtx RichTextBox 18 txt TextBox 19 tip ToolTip 20 tvw TreeView 21 wbs WebBrowser 容器控件 1 flp FlowLayoutPanel 2 grp GroupBox 3 pnl Panel 4 spl SplitContainer 5 tab TabControl 6 tlp TableLayoutPanel 菜单和工具栏 1 cms ContextMenuStrip 2 mns MenuStrip 3 ssr StatusStrip 4 tsr ToolStrip 5 tsc ToolStripContainer 数据 1 dts DataSet 2 dgv DataGridView 3 bds BindingSource 4 bdn BindingNavigator 5 rpv ReportViewer 对话框 1 cld ColorDialog 2 fbd FolderBrowserDialog 3 fnd FontDialog 4 ofd OpenFileDialog 5 sfd SaveFileDialog 组件 1 bgw BackgroundWorker 2 dre DirectoryEntry 3 drs DirectorySearcher 4 err ErrorProvider 5 evl EventLog 6 fsw FileSystemWatcher 7 hlp HelpProvider 8 img ImageList 9 msq MessageQueue 10 pfcPerformanceCounter 11 prcProcess 12 sptSerialPort 13 sclServiceController 14 tmrTimer 印刷 1 psd PageSetupDialog 2 prd PrintDialog 3 pdc PrintDocument 4 prv PrintPreviewControl 5 ppd PrintPreviewDialog 水晶报表 1 crv CrystalReportViewer 2 rpd ReportDocument 其他 1 dud DomainUpDown 2 hsc HScrollBar 3 prg PropertyGrid 4 spl Splitter 5 trb TrackBar 6 vsc VScrollBar

01

[设计模式]之一:简单工厂模式

最近思考了一下这两年的工作:做Android的时候一直看Android知识,做iOS的时候一直学iOS的东西。其实看起来感觉这样没什么问题,但仔细想想,我发现自己一直忽略了一大片知识点,那就是软件工程。不同的语言,不同的开发方向的确在代码上有千差万别,但是回到软件架构上来看,所有的编程思想都是相通的,比如说算法,再比如说设计模式。算法这点可能在移动开发中用得较少,但设计模式是必不可少的。我回想了一下,虽说写了不少代码,也考虑过一些关于模块代码结构的设计,但还是缺乏对这一块的系统了解。所以就找了一本众人推荐的书——《大话设计模式》来看。这本书写的的确好,通俗易懂,所以在这里我也推荐一下。这本书看了几个章节我就有一种受人点拨的感觉,明显感觉到如果我把这本书吃透,编码水平肯定能提高一个level。想到我的读书列表还有几本受到程序员追捧的大作要看,突然有种迫不及待就要一本一本读下去的感觉。不过读书可不是读一遍就完事的,关键就在于悟。进步也不能急,一点一点来吧。加油!

01

NC单细胞文章复现(六):Gene expression signatures(1)

在上一节,由于大部分细胞(868个)都被归为上皮细胞群中(Fig2 c),这868个细胞可被分成5个cluster,接着对这5个cluster细胞进行探索。我们使用一组来自对乳腺肿块的非监督分析的基因表达特征对5个cluster进行了研究。这些基因表达特征通过比较三阴性乳腺癌(TNBC)的四个亚型(ERBB2 amplicon,Luminal Subtype 、Basal epithelial-cell enriched 和Luminal epithelial gene cluster containing ER)而建立。先看看这5个clusters的basal细胞来源的细胞群有多少。大多数TNBC是基底样肿瘤,它们与多种TNBC型亚型重叠,与非固有基底TNBCs相比,与克隆异质性增加有关。(备注:这篇文献用到了很多apply循环,大家仔细琢磨,大概意思能看懂就行,然后可以把它应用到自己的数据中)

02
领券