"藏经阁-Blink: 阿里新一代实时计算引擎.pdf—马国维"

需积分: 0 0 下载量 192 浏览量 更新于2024-01-09 收藏 1.11MB PDF 举报
"Blink: 阿里新一代实时计算引擎"是马国维于2017年4月发表的一篇论文,详细介绍了阿里巴巴集团的新一代实时计算引擎Blink。作者以自己的职业经历作为引言,介绍了自己在阿里巴巴搜索部门工作期间所参与的项目iStream和Blink,并在百度网页搜索部门工作期间的经历。论文的结构主要包括以下内容:流式架构、Flink是什么、Blink是什么以及未来计划。 在论文中,马国维首先介绍了流式架构的基本概念,包括什么是流式数据以及流式处理引擎的作用。他解释了流式处理引擎是如何设计用于处理无限数据集的,并且提供了一个简单的代码示例。接着,他讨论了什么是有状态的流式处理,涉及到计算和状态的概念,例如计数器和过去事件的窗口。这些概念为读者提供了对流式架构的基本理解。 接下来,论文重点介绍了什么是Flink和Blink。作者以Flink作为基础,解释了Flink在实时计算中的作用以及其优势。随后,马国维详细介绍了Blink,阐述了与Flink相比Blink的特点和创新之处。他指出Blink在多方面对Flink进行了优化和改进,包括流式执行引擎、批处理引擎和查询引擎等方面的提升。论文提供了Blink的技术细节和性能优势的详细介绍,为读者展示了Blink作为新一代实时计算引擎的强大实力。 最后,作者讨论了Blink的未来计划。他提出了Blink在实时计算领域的发展方向和目标,包括在性能、稳定性和可扩展性方面的持续改进。此外,他还探讨了Blink在数据处理和应用场景上的拓展和应用,展望了Blink未来的发展前景。 总的来说,"Blink: 阿里新一代实时计算引擎"是一篇介绍阿里巴巴新一代实时计算引擎Blink的重要论文,内容详实全面。作者全面介绍了流式架构、Flink和Blink的基本概念,展示了Blink相对于Flink的技术优势,并展望了Blink的未来发展方向,对实时计算领域的研究和应用具有重要的参考价值。

from PySide2.QtCore import * from PySide2.QtWidgets import * from PySide2.QtWebEngineWidgets import * from selenium import webdriver from selenium.webdriver.chrome.service import Service from selenium.webdriver.chrome.options import Options class TabWidget(QTabWidget): def init(self, *args, **kwargs): QTabWidget.init(self, *args, **kwargs) self.setup_browser() self.load_pages() def setup_browser(self): options = Options() options.add_argument('--ignore-certificate-errors') options.add_experimental_option('excludeSwitches', ['enable-automation']) options.add_argument("--disable-blink-features=AutomationControlled") options.add_argument('--disable-gpu') options.add_argument('blink-settings=imagesEnabled=false') options.binary_location = './chrome-win/chrome.exe' driver_path = Service("chromedriver.exe") self.driver = webdriver.Chrome(service=driver_path, options=options) def load_pages(self): self.load_page("https://www.163.com", "网易新闻") def load_page(self, url, title): view = HtmlView(self) view.load(QUrl(url)) ix = self.addTab(view, title) self.setCurrentIndex(ix) class HtmlView(QWebEngineView): def init(self, *args, **kwargs): QWebEngineView.init(self, *args, **kwargs) self.tab = self.parent() def createWindow(self, windowType): if windowType == QWebEnginePage.WebBrowserTab: webView = HtmlView(self.tab) ix = self.tab.addTab(webView, "加载中 ...") self.tab.setCurrentIndex(ix) return webView return QWebEngineView.createWindow(self, windowType) if name == "main": import sys app = QApplication(sys.argv) main = TabWidget() main.show() sys.exit(app.exec_()),请优化这段代码

2023-06-08 上传