sijie closed pull request #2308: [blog] Enable blog in website and add one for 
2.1.0 release
URL: https://github.com/apache/incubator-pulsar/pull/2308
 
 
   

This is a PR merged from a forked repository.
As GitHub hides the original diff on merge, it is displayed below for
the sake of provenance:

As this is a foreign pull request (from a fork), the diff is supplied
below (as it won't show otherwise due to GitHub magic):

diff --git a/site2/website/blog/2018-08-06-Apache-Pulsar-2-1-0.md 
b/site2/website/blog/2018-08-06-Apache-Pulsar-2-1-0.md
new file mode 100644
index 0000000000..cf2823d67b
--- /dev/null
+++ b/site2/website/blog/2018-08-06-Apache-Pulsar-2-1-0.md
@@ -0,0 +1,88 @@
+---
+author: Sijie Guo
+authorURL: https://twitter.com/sijieg
+title: Apache Pulsar 2.1.0-incubating
+---
+
+We are glad to present the new 2.1.0-incubating release of Pulsar.
+This release is the culmination of 2 months of work that have
+brought multiple new features and improvements to Pulsar. 
+
+In Pulsar 2.1 you'll see:
+
+- [Pulsar IO](/docs/io-overview) connector framework and a list of [builtin 
connectors](/docs/io-connectors)
+- 
[PIP-17](https://github.com/apache/incubator-pulsar/wiki/PIP-17:-Tiered-storage-for-Pulsar-topics):
 [Tiered Storage](/docs/docs/concepts-tiered-storage)
+- Pulsar [Stateful Functions](/docs/functions-state)
+- [Go Client](/docs/client-libraries-go)
+- 
[Avro](https://github.com/apache/incubator-pulsar/blob/v2.1.0-incubating/pulsar-client-schema/src/main/java/org/apache/pulsar/client/impl/schema/AvroSchema.java)
+  and 
[Protobuf](https://github.com/apache/incubator-pulsar/blob/v2.1.0-incubating/pulsar-client-schema/src/main/java/org/apache/pulsar/client/impl/schema/ProtobufSchema.java)
 Schemas
+
+For details information please check the detailed [release 
notes](/release-notes/#2.1.0-incubating) and [2.1.0 documentation](/versions).
+
+<!--truncate-->
+
+We'll provide a brief summary of these features in the section below.
+
+## Pulsar IO
+
+Since Pulsar 2.0, we introduced a serverless inspired lightweight computing 
framework [Pulsar Functions](/docs/functions-overview),
+providing the easiest possible way to implement application-specific in-stream 
processing logic of any complexity. A lot of developers
+love Pulsar Functions because they require minimal boilerplate and are easy to 
reason about.
+
+In Pulsar 2.1, we continued following this "simplicity first" principle on 
developing Pulsar. We developed this IO (input/output) connector
+framework on top of Pulsar Functions, to simplify getting data in and out of 
Apache Pulsar. You don't need to write any single line of code.
+All you need is prepare a configuration file of the system your want to 
connect to, and use Pulsar admin
+CLI to submit a connector to Pulsar. Pulsar will take care of all the other 
stuffs, such as fault-tolerance, rebalancing and etc.
+
+There are 6 built-in connectors released in 2.1 release. They are:
+
+- [Aerospike Connector](/docs/io-aerospike/)
+- [Cassandra Connector](/docs/io-cassandra/)
+- [Kafka Connector](/docs/io-kafka/)
+- [Kinesis Connector](/docs/io-kinesis/)
+- [RabbitMQ Connector](/docs/io-rabbitmq/)
+- [Twitter Firehose Connector](/docs/io-twitter/) 
+
+You can follow [the tutorial](/docs/io-quickstart) to try out Pulsar IO on 
connecting Pulsar with [Apache Cassandra](http://cassandra.apache.org/).
+
+More connectors will be coming in future releases. If you are interested in 
contributing a connector to Pulsar, checkout the guide on [Developing 
Connectors](/docs/io-develop).
+It is as simple as writing a Pulsar function.
+
+## Tiered Storage
+
+One of the advantages of Apache Pulsar is [its segment 
storage](https://streaml.io/blog/pulsar-segment-based-architecture) using
+[Apache BookKeeper](https://bookkeeper.apache.org/). You can store a topic 
backlog as large as you want.
+When the cluster starts to run out of space, you just add another storage 
node, and the system will automatically
+pickup the new storage nodes and start using them without rebalancing 
partitions. However, this can start to get expensive after a while.
+
+Pulsar mitigates this cost/size trade-off by providing Tiered Storage. Tiered 
Storage turns your Pulsar topics into real *infinite* streams,
+by offloading older segments into a long term storage, such as AWS S3, GCS and 
HDFS, which is designed for storing cold data. To the end user,
+there is no perceivable difference between consuming streams whose data is 
tored in BookKeeper or in long term storage. All the underlying
+offloading mechanisms and metadata management are transprent to applications.
+
+Currently [S3](https://aws.amazon.com/s3/) is supported in 2.1. More 
offloaders (such as Google GCS, Azure Blobstore, and HDFS) are coming
+in future releases.
+
+If you are interested in this feature, you can checkout more details 
[here](cookbooks-tiered-storage).
+
+## Stateful Function
+
+The most challenging thing that stream processing engines facing is managing 
*state*. So does Pulsar Functions. As the goal for Pulsar Functions
+is to simplify developing stream native processing logic, we also want to 
provide an easiest way for Pulsar Functions to manage its state.
+We introduced a set of [State API](/docs/functions-state/#api) for Pulsar 
Functions to store their state. It integrates with the table service
+in Apache BookKeeper for storing the state.
+
+It is released as a developer preview feature in Pulsar Functions Java SDK. We 
would like to collect feedbacks to improve it in future releases.
+
+## Schemas
+
+Pulsar 2.0 introduces the native support for schemas in Pulsar. It means you 
can declare how message data looks and have Pulsar enforce that
+producers can only publish valid data on the topics. In 2.0, Pulsar only 
supports `String`, `bytes` and `JSON` schemas. We introduced the
+support for [Avro](https://avro.apache.org/) and 
[Protobuf](https://developers.google.com/protocol-buffers/) in this release. 
+
+## Clients
+
+We have introduced a new [Go](/docs/client-libraries-go) client in 2.1 
release. The Pulsar Go client library is based on the
+[C++](/docs/client-libraries-cpp/) client library.
+
+Follow [the instructions](/docs/client-libraries-go/#installing-go-package) to 
try it out in your Go applications!
diff --git a/site2/website/siteConfig.js b/site2/website/siteConfig.js
index 656c5747f9..b5f3e5042c 100644
--- a/site2/website/siteConfig.js
+++ b/site2/website/siteConfig.js
@@ -95,6 +95,7 @@ const siteConfig = {
     {page: 'download', label: 'Download'},
     {doc: 'client-libraries', label: 'Clients'},
     {page: 'admin-rest-api', label: 'REST API'},
+    {blog: true, label: 'Blog'},
     {href: '#community', label: 'Community'},
     {href: '#apache', label: 'Apache'},
     // Determines search bar position among links
@@ -151,7 +152,9 @@ const siteConfig = {
 
   /* Open Graph and Twitter card images */
   //ogImage: 'img/docusaurus.png',
-  //twitterImage: 'img/docusaurus.png',
+  twitter: true,
+  twitterUsername: 'apache_pulsar',
+  twitterImage: 'img/pulsar.svg',
 
   disableHeaderTitle: true,
 


 

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
[email protected]


With regards,
Apache Git Services

Reply via email to