summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorchaoc <[email protected]>2023-07-18 10:03:33 +0800
committerchaoc <[email protected]>2023-07-18 10:03:33 +0800
commit25c6703f61f11650c81436779eccc00daf760d40 (patch)
tree6a05223a672b9898a6da365d2a8479ceeeae1aac
chore: init projectHEADmaster
-rw-r--r--.gitignore35
-rw-r--r--README.MD41
-rw-r--r--pom.xml129
3 files changed, 205 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..d769462
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,35 @@
+target/
+!.mvn/wrapper/maven-wrapper.jar
+!**/src/main/**/target/
+!**/src/test/**/target/
+
+### IntelliJ IDEA ###
+.idea
+*.iws
+*.iml
+*.ipr
+
+### Eclipse ###
+.apt_generated
+.classpath
+.factorypath
+.project
+.settings
+.springBeans
+.sts4-cache
+
+### NetBeans ###
+/nbproject/private/
+/nbbuild/
+/dist/
+/nbdist/
+/.nb-gradle/
+build/
+!**/src/main/**/build/
+!**/src/test/**/build/
+
+### VS Code ###
+.vscode/
+
+### Mac OS ###
+.DS_Store \ No newline at end of file
diff --git a/README.MD b/README.MD
new file mode 100644
index 0000000..0c2167d
--- /dev/null
+++ b/README.MD
@@ -0,0 +1,41 @@
+# Flink-Networks
+
+Flink-Networks 是一个专为使用 Apache Flink 进行网络流量数据流处理和分析而设计的综合工具包。它提供了各种组件和工具,以便在 Flink 应用程序中集成、处理和序列化网络流量数据。
+
+
+# Feature
+## UDP Connector
+
+Flink-Networks 包含一个自定义的 UDP 连接器,使 Flink 能够直接读取 UDP 数据包。该连接器允许您无缝地将 UDP 数据源中的网络流量数据集成到 Flink 流式处理管道中,无需中间组件或复杂的设置过程。
+
+## IPfix Format
+
+该工具包还支持解析 IPfix(Internet Protocol Flow Information Export)协议。IPfix 格式提供了一种标准化的方法来收集和导出网络流量流信息。借助 Flink-Networks 中的 IPfix-Format 支持,您可以轻松解码 IPfix 记录,并利用其中包含的丰富信息进行进一步处理和分析。
+
+# 可扩展性
+
+除了 UDP 连接器和 IPfix 格式支持外,Flink-Networks 还旨在扩展其功能集,以涵盖与网络流量和数据序列化相关的各个方面。未来的更新可能包括针对不同网络协议的其他连接器,支持其他流量格式的能力以及增强的序列化选项,以满足各种网络分析需求。
+
+# 入门指南
+
+要在您的 Flink 项目中开始使用 Flink-Networks,请按照以下步骤操作:
+
+- 克隆 Flink-Networks 仓库:
+
+```shell
+git clone https://github.com/your-username/flink-networks.git
+```
+
+- 使用您偏好的构建系统(例如 Maven、Gradle)构建工具包。
+
+- 在 Flink 项目配置中将 Flink-Networks 库添加为依赖项。
+
+- 从 Flink-Networks 中导入所需的类和组件到您的 Flink 应用程序代码中。
+
+- 根据需要在您的流式处理管道中使用 UDP Connector 或 IPfix Formt 支持。
+
+有关如何使用 Flink-Networks 的不同组件的详细示例和文档,请参阅仓库的 Wiki 部分。
+
+致谢
+
+Flink-Networks 基于 Apache Flink 强大的功能构建,并旨在在 Flink 生态系统中提供无缝集成和增强的网络流量数据处理支持。
diff --git a/pom.xml b/pom.xml
new file mode 100644
index 0000000..9b9e76d
--- /dev/null
+++ b/pom.xml
@@ -0,0 +1,129 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <groupId>com.geedgenetworks</groupId>
+ <artifactId>flink-networks-parent</artifactId>
+ <version>1.0-SNAPSHOT</version>
+
+ <properties>
+ <java.version>11</java.version>
+ <maven.compiler.source>${java.version}</maven.compiler.source>
+ <maven.compiler.target>${java.version}</maven.compiler.target>
+ <flink.version>1.15.4</flink.version>
+ <scala.binary.version>2.12</scala.binary.version>
+ <scala.version>2.12.15</scala.version>
+ <slf4j.version>1.7.32</slf4j.version>
+ <log4j.version>2.17.1</log4j.version>
+ </properties>
+
+ <dependencyManagement>
+ <dependencies>
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-api</artifactId>
+ <version>${slf4j.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.logging.log4j</groupId>
+ <artifactId>log4j-slf4j-impl</artifactId>
+ <version>${log4j.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.logging.log4j</groupId>
+ <artifactId>log4j-api</artifactId>
+ <version>${log4j.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.logging.log4j</groupId>
+ <artifactId>log4j-core</artifactId>
+ <version>${log4j.version}</version>
+ </dependency>
+
+ <dependency>
+ <!-- API bridge between log4j 1 and 2 -->
+ <groupId>org.apache.logging.log4j</groupId>
+ <artifactId>log4j-1.2-api</artifactId>
+ <version>${log4j.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.scala-lang</groupId>
+ <artifactId>scala-library</artifactId>
+ <version>${scala.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.scala-lang</groupId>
+ <artifactId>scala-reflect</artifactId>
+ <version>${scala.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.scala-lang</groupId>
+ <artifactId>scala-compiler</artifactId>
+ <version>${scala.version}</version>
+ </dependency>
+ </dependencies>
+ </dependencyManagement>
+
+ <build>
+ <pluginManagement>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-javadoc-plugin</artifactId>
+ <version>2.9.1</version><!--$NO-MVN-MAN-VER$-->
+ <configuration>
+ <quiet>true</quiet>
+ <detectOfflineLinks>false</detectOfflineLinks>
+ <additionalJOptions combine.children="append">
+ <additionalJOption>-Xdoclint:none</additionalJOption>
+ </additionalJOptions>
+ </configuration>
+ </plugin>
+
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <version>3.8.0</version>
+ <configuration>
+ <source>${java.version}</source>
+ <target>${java.version}</target>
+ <useIncrementalCompilation>false</useIncrementalCompilation>
+ <compilerArgs>
+ <arg>-Xpkginfo:always</arg>
+ </compilerArgs>
+ </configuration>
+ </plugin>
+
+ <plugin>
+ <groupId>net.alchim31.maven</groupId>
+ <artifactId>scala-maven-plugin</artifactId>
+ <version>3.2.2</version>
+ <configuration>
+ <args>
+ <arg>-nobootcp</arg>
+ <arg>-target:jvm-${java.version}</arg>
+ </args>
+ <jvmArgs>
+ <arg>-Xss2m</arg>
+ </jvmArgs>
+ </configuration>
+ </plugin>
+
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-shade-plugin</artifactId>
+ <version>3.1.1</version>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+ </build>
+
+</project> \ No newline at end of file