Anonymitaet commented on code in PR #614:
URL: https://github.com/apache/pulsar-site/pull/614#discussion_r1236182323


##########
src/components/pages/HomePage/HowPulsarWorks/HowPulsarWorks.tsx:
##########
@@ -0,0 +1,114 @@
+import React from 'react';
+import s from './HowPulsarWorks.module.css'
+import ScreenTitle from '../ui/ScreenTitle/ScreenTitle';
+
+// SVGO breaks the illustration. To fix it, we import it as is.
+import illustrationDesktop from '!!raw-loader!./img/illustration-desktop.svg';
+import illustrationMobile from '!!raw-loader!./img/illustration-mobile.svg';
+
+import BookkeeperIcon from './img/bookkeeper.svg';
+import BrokersIcon from './img/brokers.svg';
+import ZookeeperIcon from './img/zookeeper.svg';
+import ProducerAndConsumerIcon from './img/producer-and-consumer.svg';
+import Slider from '@site/src/components/ui/Slider/Slider';
+
+const cards: CardProps[] = [
+  {
+    title: 'Producer & Consumer',
+    image: <ProducerAndConsumerIcon />,
+    children: (
+      <p>
+        A Pulsar client contains a consumer and a producer.
+        A Producer writes messages on a topic.

Review Comment:
   ```suggestion
           A producer writes messages on a topic.
   ```



##########
src/components/pages/HomePage/HowPulsarWorks/HowPulsarWorks.tsx:
##########
@@ -0,0 +1,114 @@
+import React from 'react';
+import s from './HowPulsarWorks.module.css'
+import ScreenTitle from '../ui/ScreenTitle/ScreenTitle';
+
+// SVGO breaks the illustration. To fix it, we import it as is.
+import illustrationDesktop from '!!raw-loader!./img/illustration-desktop.svg';
+import illustrationMobile from '!!raw-loader!./img/illustration-mobile.svg';
+
+import BookkeeperIcon from './img/bookkeeper.svg';
+import BrokersIcon from './img/brokers.svg';
+import ZookeeperIcon from './img/zookeeper.svg';
+import ProducerAndConsumerIcon from './img/producer-and-consumer.svg';
+import Slider from '@site/src/components/ui/Slider/Slider';
+
+const cards: CardProps[] = [
+  {
+    title: 'Producer & Consumer',
+    image: <ProducerAndConsumerIcon />,
+    children: (
+      <p>
+        A Pulsar client contains a consumer and a producer.
+        A Producer writes messages on a topic.
+        A consumer reads messages from a topic and acknowledges specific 
messages or all up to a specific message.
+      </p>
+    )
+  },
+  {
+    title: 'Apache Zookeeper',
+    image: <ZookeeperIcon />,
+    children: (
+      <p>
+        Pulsar and Bookkeeper use Apache Zookeeper to save metadata 
coordinated between nodes,
+        such as a list of ledgers per topic, segments per ledger, and mapping 
of topic bundles to a Broker.
+        It’s a cluster of highly available and replicated servers (usually 3).
+      </p>
+    )
+  },
+  {
+    title: 'Pulsar Brokers',
+    image: <BrokersIcon />,
+    children: (
+      <p>
+        Topics (i.e., partitions) are divided among Pulsar Brokers.

Review Comment:
   ```suggestion
           Topics (i.e., partitions) are divided among Pulsar brokers.
   ```



##########
src/components/pages/HomePage/HowPulsarWorks/HowPulsarWorks.tsx:
##########
@@ -0,0 +1,114 @@
+import React from 'react';
+import s from './HowPulsarWorks.module.css'
+import ScreenTitle from '../ui/ScreenTitle/ScreenTitle';
+
+// SVGO breaks the illustration. To fix it, we import it as is.
+import illustrationDesktop from '!!raw-loader!./img/illustration-desktop.svg';
+import illustrationMobile from '!!raw-loader!./img/illustration-mobile.svg';
+
+import BookkeeperIcon from './img/bookkeeper.svg';
+import BrokersIcon from './img/brokers.svg';
+import ZookeeperIcon from './img/zookeeper.svg';
+import ProducerAndConsumerIcon from './img/producer-and-consumer.svg';
+import Slider from '@site/src/components/ui/Slider/Slider';
+
+const cards: CardProps[] = [
+  {
+    title: 'Producer & Consumer',
+    image: <ProducerAndConsumerIcon />,
+    children: (
+      <p>
+        A Pulsar client contains a consumer and a producer.
+        A Producer writes messages on a topic.
+        A consumer reads messages from a topic and acknowledges specific 
messages or all up to a specific message.
+      </p>
+    )
+  },
+  {
+    title: 'Apache Zookeeper',
+    image: <ZookeeperIcon />,
+    children: (
+      <p>
+        Pulsar and Bookkeeper use Apache Zookeeper to save metadata 
coordinated between nodes,

Review Comment:
   ```suggestion
           Pulsar and BookKeeper use Apache ZooKeeper to save metadata 
coordinated between nodes,
   ```



##########
src/components/pages/HomePage/HowPulsarWorks/HowPulsarWorks.tsx:
##########
@@ -0,0 +1,114 @@
+import React from 'react';
+import s from './HowPulsarWorks.module.css'
+import ScreenTitle from '../ui/ScreenTitle/ScreenTitle';
+
+// SVGO breaks the illustration. To fix it, we import it as is.
+import illustrationDesktop from '!!raw-loader!./img/illustration-desktop.svg';
+import illustrationMobile from '!!raw-loader!./img/illustration-mobile.svg';
+
+import BookkeeperIcon from './img/bookkeeper.svg';
+import BrokersIcon from './img/brokers.svg';
+import ZookeeperIcon from './img/zookeeper.svg';
+import ProducerAndConsumerIcon from './img/producer-and-consumer.svg';
+import Slider from '@site/src/components/ui/Slider/Slider';
+
+const cards: CardProps[] = [
+  {
+    title: 'Producer & Consumer',
+    image: <ProducerAndConsumerIcon />,
+    children: (
+      <p>
+        A Pulsar client contains a consumer and a producer.
+        A Producer writes messages on a topic.
+        A consumer reads messages from a topic and acknowledges specific 
messages or all up to a specific message.
+      </p>
+    )
+  },
+  {
+    title: 'Apache Zookeeper',
+    image: <ZookeeperIcon />,
+    children: (
+      <p>
+        Pulsar and Bookkeeper use Apache Zookeeper to save metadata 
coordinated between nodes,
+        such as a list of ledgers per topic, segments per ledger, and mapping 
of topic bundles to a Broker.
+        It’s a cluster of highly available and replicated servers (usually 3).
+      </p>
+    )
+  },
+  {
+    title: 'Pulsar Brokers',
+    image: <BrokersIcon />,
+    children: (
+      <p>
+        Topics (i.e., partitions) are divided among Pulsar Brokers.
+        A broker receives messages for a topic and appends them to the topic’s 
active virtual file (a.k.a Ledger),
+        hosted on the Bookkeeper cluster. Brokers read messages from the cache 
(mostly) or Bookkeeper and dispatch them to the Consumers.
+        Brokers also receive message acknowledgments and persist them to the 
Bookkeeper as well.
+        They are stateless (don’t use/need a disk).
+      </p>
+    )
+  },
+  {
+    title: 'Apache Bookkeeper',
+    image: <BookkeeperIcon />,
+    children: (
+      <p>
+        Apache BookKeeper is a cluster of nodes called Bookies.

Review Comment:
   ```suggestion
           Apache BookKeeper is a cluster of nodes called bookies.
   ```



##########
src/components/pages/HomePage/HowPulsarWorks/HowPulsarWorks.tsx:
##########
@@ -0,0 +1,114 @@
+import React from 'react';
+import s from './HowPulsarWorks.module.css'
+import ScreenTitle from '../ui/ScreenTitle/ScreenTitle';
+
+// SVGO breaks the illustration. To fix it, we import it as is.
+import illustrationDesktop from '!!raw-loader!./img/illustration-desktop.svg';
+import illustrationMobile from '!!raw-loader!./img/illustration-mobile.svg';
+
+import BookkeeperIcon from './img/bookkeeper.svg';
+import BrokersIcon from './img/brokers.svg';
+import ZookeeperIcon from './img/zookeeper.svg';
+import ProducerAndConsumerIcon from './img/producer-and-consumer.svg';
+import Slider from '@site/src/components/ui/Slider/Slider';
+
+const cards: CardProps[] = [
+  {
+    title: 'Producer & Consumer',
+    image: <ProducerAndConsumerIcon />,
+    children: (
+      <p>
+        A Pulsar client contains a consumer and a producer.
+        A Producer writes messages on a topic.
+        A consumer reads messages from a topic and acknowledges specific 
messages or all up to a specific message.
+      </p>
+    )
+  },
+  {
+    title: 'Apache Zookeeper',
+    image: <ZookeeperIcon />,
+    children: (
+      <p>
+        Pulsar and Bookkeeper use Apache Zookeeper to save metadata 
coordinated between nodes,
+        such as a list of ledgers per topic, segments per ledger, and mapping 
of topic bundles to a Broker.
+        It’s a cluster of highly available and replicated servers (usually 3).
+      </p>
+    )
+  },
+  {
+    title: 'Pulsar Brokers',
+    image: <BrokersIcon />,
+    children: (
+      <p>
+        Topics (i.e., partitions) are divided among Pulsar Brokers.
+        A broker receives messages for a topic and appends them to the topic’s 
active virtual file (a.k.a Ledger),
+        hosted on the Bookkeeper cluster. Brokers read messages from the cache 
(mostly) or Bookkeeper and dispatch them to the Consumers.
+        Brokers also receive message acknowledgments and persist them to the 
Bookkeeper as well.
+        They are stateless (don’t use/need a disk).
+      </p>
+    )
+  },
+  {
+    title: 'Apache Bookkeeper',
+    image: <BookkeeperIcon />,
+    children: (
+      <p>
+        Apache BookKeeper is a cluster of nodes called Bookies.
+        Each virtual file (a.k.a ledger) is divided into consecutive segments, 
and each segment is kept on 3 Bookies by default

Review Comment:
   ```suggestion
           Each virtual file (a.k.a ledger) is divided into consecutive 
segments, and each segment is kept on 3 bookies by default
   ```



##########
src/components/pages/HomePage/HowPulsarWorks/HowPulsarWorks.tsx:
##########
@@ -0,0 +1,114 @@
+import React from 'react';
+import s from './HowPulsarWorks.module.css'
+import ScreenTitle from '../ui/ScreenTitle/ScreenTitle';
+
+// SVGO breaks the illustration. To fix it, we import it as is.
+import illustrationDesktop from '!!raw-loader!./img/illustration-desktop.svg';
+import illustrationMobile from '!!raw-loader!./img/illustration-mobile.svg';
+
+import BookkeeperIcon from './img/bookkeeper.svg';
+import BrokersIcon from './img/brokers.svg';
+import ZookeeperIcon from './img/zookeeper.svg';
+import ProducerAndConsumerIcon from './img/producer-and-consumer.svg';
+import Slider from '@site/src/components/ui/Slider/Slider';
+
+const cards: CardProps[] = [
+  {
+    title: 'Producer & Consumer',
+    image: <ProducerAndConsumerIcon />,
+    children: (
+      <p>
+        A Pulsar client contains a consumer and a producer.
+        A Producer writes messages on a topic.
+        A consumer reads messages from a topic and acknowledges specific 
messages or all up to a specific message.
+      </p>
+    )
+  },
+  {
+    title: 'Apache Zookeeper',
+    image: <ZookeeperIcon />,
+    children: (
+      <p>
+        Pulsar and Bookkeeper use Apache Zookeeper to save metadata 
coordinated between nodes,
+        such as a list of ledgers per topic, segments per ledger, and mapping 
of topic bundles to a Broker.
+        It’s a cluster of highly available and replicated servers (usually 3).
+      </p>
+    )
+  },
+  {
+    title: 'Pulsar Brokers',
+    image: <BrokersIcon />,
+    children: (
+      <p>
+        Topics (i.e., partitions) are divided among Pulsar Brokers.
+        A broker receives messages for a topic and appends them to the topic’s 
active virtual file (a.k.a Ledger),
+        hosted on the Bookkeeper cluster. Brokers read messages from the cache 
(mostly) or Bookkeeper and dispatch them to the Consumers.
+        Brokers also receive message acknowledgments and persist them to the 
Bookkeeper as well.
+        They are stateless (don’t use/need a disk).
+      </p>
+    )
+  },
+  {
+    title: 'Apache Bookkeeper',
+    image: <BookkeeperIcon />,
+    children: (
+      <p>
+        Apache BookKeeper is a cluster of nodes called Bookies.
+        Each virtual file (a.k.a ledger) is divided into consecutive segments, 
and each segment is kept on 3 Bookies by default
+        (replicated by the client - i.e., the broker).
+        Operators can add Bookies rapidly since no data reshuffling (moving) 
between them is required.

Review Comment:
   ```suggestion
           Operators can add bookies rapidly since no data reshuffling (moving) 
between them is required.
   ```



##########
src/components/pages/HomePage/HowPulsarWorks/HowPulsarWorks.tsx:
##########
@@ -0,0 +1,114 @@
+import React from 'react';
+import s from './HowPulsarWorks.module.css'
+import ScreenTitle from '../ui/ScreenTitle/ScreenTitle';
+
+// SVGO breaks the illustration. To fix it, we import it as is.
+import illustrationDesktop from '!!raw-loader!./img/illustration-desktop.svg';
+import illustrationMobile from '!!raw-loader!./img/illustration-mobile.svg';
+
+import BookkeeperIcon from './img/bookkeeper.svg';
+import BrokersIcon from './img/brokers.svg';
+import ZookeeperIcon from './img/zookeeper.svg';
+import ProducerAndConsumerIcon from './img/producer-and-consumer.svg';
+import Slider from '@site/src/components/ui/Slider/Slider';
+
+const cards: CardProps[] = [
+  {
+    title: 'Producer & Consumer',
+    image: <ProducerAndConsumerIcon />,
+    children: (
+      <p>
+        A Pulsar client contains a consumer and a producer.
+        A Producer writes messages on a topic.
+        A consumer reads messages from a topic and acknowledges specific 
messages or all up to a specific message.
+      </p>
+    )
+  },
+  {
+    title: 'Apache Zookeeper',
+    image: <ZookeeperIcon />,
+    children: (
+      <p>
+        Pulsar and Bookkeeper use Apache Zookeeper to save metadata 
coordinated between nodes,
+        such as a list of ledgers per topic, segments per ledger, and mapping 
of topic bundles to a Broker.
+        It’s a cluster of highly available and replicated servers (usually 3).
+      </p>
+    )
+  },
+  {
+    title: 'Pulsar Brokers',
+    image: <BrokersIcon />,
+    children: (
+      <p>
+        Topics (i.e., partitions) are divided among Pulsar Brokers.
+        A broker receives messages for a topic and appends them to the topic’s 
active virtual file (a.k.a Ledger),
+        hosted on the Bookkeeper cluster. Brokers read messages from the cache 
(mostly) or Bookkeeper and dispatch them to the Consumers.
+        Brokers also receive message acknowledgments and persist them to the 
Bookkeeper as well.

Review Comment:
   ```suggestion
           Brokers also receive message acknowledgments and persist them to the 
BookKeeper as well.
   ```



##########
src/components/pages/HomePage/HowPulsarWorks/HowPulsarWorks.tsx:
##########
@@ -0,0 +1,114 @@
+import React from 'react';
+import s from './HowPulsarWorks.module.css'
+import ScreenTitle from '../ui/ScreenTitle/ScreenTitle';
+
+// SVGO breaks the illustration. To fix it, we import it as is.
+import illustrationDesktop from '!!raw-loader!./img/illustration-desktop.svg';
+import illustrationMobile from '!!raw-loader!./img/illustration-mobile.svg';
+
+import BookkeeperIcon from './img/bookkeeper.svg';
+import BrokersIcon from './img/brokers.svg';
+import ZookeeperIcon from './img/zookeeper.svg';
+import ProducerAndConsumerIcon from './img/producer-and-consumer.svg';
+import Slider from '@site/src/components/ui/Slider/Slider';
+
+const cards: CardProps[] = [
+  {
+    title: 'Producer & Consumer',
+    image: <ProducerAndConsumerIcon />,
+    children: (
+      <p>
+        A Pulsar client contains a consumer and a producer.
+        A Producer writes messages on a topic.
+        A consumer reads messages from a topic and acknowledges specific 
messages or all up to a specific message.
+      </p>
+    )
+  },
+  {
+    title: 'Apache Zookeeper',
+    image: <ZookeeperIcon />,
+    children: (
+      <p>
+        Pulsar and Bookkeeper use Apache Zookeeper to save metadata 
coordinated between nodes,
+        such as a list of ledgers per topic, segments per ledger, and mapping 
of topic bundles to a Broker.
+        It’s a cluster of highly available and replicated servers (usually 3).
+      </p>
+    )
+  },
+  {
+    title: 'Pulsar Brokers',
+    image: <BrokersIcon />,
+    children: (
+      <p>
+        Topics (i.e., partitions) are divided among Pulsar Brokers.
+        A broker receives messages for a topic and appends them to the topic’s 
active virtual file (a.k.a Ledger),

Review Comment:
   ```suggestion
           A broker receives messages for a topic and appends them to the 
topic’s active virtual file (a.k.a ledger),
   ```



##########
src/components/pages/HomePage/HowPulsarWorks/HowPulsarWorks.tsx:
##########
@@ -0,0 +1,114 @@
+import React from 'react';
+import s from './HowPulsarWorks.module.css'
+import ScreenTitle from '../ui/ScreenTitle/ScreenTitle';
+
+// SVGO breaks the illustration. To fix it, we import it as is.
+import illustrationDesktop from '!!raw-loader!./img/illustration-desktop.svg';
+import illustrationMobile from '!!raw-loader!./img/illustration-mobile.svg';
+
+import BookkeeperIcon from './img/bookkeeper.svg';
+import BrokersIcon from './img/brokers.svg';
+import ZookeeperIcon from './img/zookeeper.svg';
+import ProducerAndConsumerIcon from './img/producer-and-consumer.svg';
+import Slider from '@site/src/components/ui/Slider/Slider';
+
+const cards: CardProps[] = [
+  {
+    title: 'Producer & Consumer',
+    image: <ProducerAndConsumerIcon />,
+    children: (
+      <p>
+        A Pulsar client contains a consumer and a producer.
+        A Producer writes messages on a topic.
+        A consumer reads messages from a topic and acknowledges specific 
messages or all up to a specific message.
+      </p>
+    )
+  },
+  {
+    title: 'Apache Zookeeper',
+    image: <ZookeeperIcon />,
+    children: (
+      <p>
+        Pulsar and Bookkeeper use Apache Zookeeper to save metadata 
coordinated between nodes,
+        such as a list of ledgers per topic, segments per ledger, and mapping 
of topic bundles to a Broker.

Review Comment:
   ```suggestion
           such as a list of ledgers per topic, segments per ledger, and 
mapping of topic bundles to a broker.
   ```



##########
src/components/pages/HomePage/HowPulsarWorks/HowPulsarWorks.tsx:
##########
@@ -0,0 +1,114 @@
+import React from 'react';
+import s from './HowPulsarWorks.module.css'
+import ScreenTitle from '../ui/ScreenTitle/ScreenTitle';
+
+// SVGO breaks the illustration. To fix it, we import it as is.
+import illustrationDesktop from '!!raw-loader!./img/illustration-desktop.svg';
+import illustrationMobile from '!!raw-loader!./img/illustration-mobile.svg';
+
+import BookkeeperIcon from './img/bookkeeper.svg';
+import BrokersIcon from './img/brokers.svg';
+import ZookeeperIcon from './img/zookeeper.svg';
+import ProducerAndConsumerIcon from './img/producer-and-consumer.svg';
+import Slider from '@site/src/components/ui/Slider/Slider';
+
+const cards: CardProps[] = [
+  {
+    title: 'Producer & Consumer',
+    image: <ProducerAndConsumerIcon />,
+    children: (
+      <p>
+        A Pulsar client contains a consumer and a producer.
+        A Producer writes messages on a topic.
+        A consumer reads messages from a topic and acknowledges specific 
messages or all up to a specific message.
+      </p>
+    )
+  },
+  {
+    title: 'Apache Zookeeper',
+    image: <ZookeeperIcon />,
+    children: (
+      <p>
+        Pulsar and Bookkeeper use Apache Zookeeper to save metadata 
coordinated between nodes,
+        such as a list of ledgers per topic, segments per ledger, and mapping 
of topic bundles to a Broker.
+        It’s a cluster of highly available and replicated servers (usually 3).
+      </p>
+    )
+  },
+  {
+    title: 'Pulsar Brokers',
+    image: <BrokersIcon />,
+    children: (
+      <p>
+        Topics (i.e., partitions) are divided among Pulsar Brokers.
+        A broker receives messages for a topic and appends them to the topic’s 
active virtual file (a.k.a Ledger),
+        hosted on the Bookkeeper cluster. Brokers read messages from the cache 
(mostly) or Bookkeeper and dispatch them to the Consumers.

Review Comment:
   ```suggestion
           hosted on the Bookkeeper cluster. Brokers read messages from the 
cache (mostly) or BookKeeper and dispatch them to the consumers.
   ```
   why capitalize these words? (broker, producer, consumer, ledger,...)



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to