This is indeed a game-changing feature. +1 (April)
Best, Penguin Bruno Cadonna <cado...@apache.org> 於 2025年4月2日 週三 下午3:43寫道: > Great idea! > PHP is the way to go! > > +1 (April) > > Best, > Bruno > > On 02.04.25 02:18, Matthias J. Sax wrote: > > Sounds like a great idea, Bill! We all know that Java is dead, but the > > Web is here to stay! > > > > Combining the Web with AI sounds like a next natural step, to bring > > KafkaStreams to the masses! > > > > > > -Matthias > > > > On 4/1/25 11:58 AM, Bill Bejeck wrote: > >> Dear Apache Kafka Community, > >> I'd like to propose an exciting new extension to the Kafka ecosystem > >> that I > >> believe will revolutionize how we think about stream processing: > >> KStreamsJS-PHP - a full PHP implementation of Kafka Streams with > >> browser-based AI capabilities. > >> > >> Motivation > >> As we all know, PHP is the backbone of the web. Despite numerous > >> obituaries > >> written for it since the early 2000s, PHP continues to power > >> approximately > >> 77.5% of all websites with a known server-side language. However, these > >> millions of PHP developers have been unjustly excluded from the Kafka > >> Streams ecosystem! > >> > >> Technical Overview > >> KStreamsJS-PHP will be implemented as a PHP extension written > >> primarily in > >> JavaScript (transpiled to PHP) with a Rust core for performance. Key > >> features include: > >> 1. Full DSL API compatible with Kafka Streams but with PHP syntax: > >> > >> <?php > >> $builder = new KStreamsBuilderJS(); > >> $kstream = $builder->stream("input-topic"); > >> > >> $kstream > >> ->filter(function($key, $value) { return $value->count > 1000; > }) > >> ->map(function($key, $value) { return KeyValue::pair($key, > >> strtoupper($value->name)); }) > >> ->to("output-topic"); > >> ?> > >> > >> 2. Browser-based State Stores: All state will be managed through > >> IndexedDB > >> in the user's browser. This dramatically simplifies operations as you no > >> longer need to manage RocksDB instances. > >> 3. AI-powered Stream Processing: The extension will include a > >> revolutionary > >> "AI Topology Builder" that watches as developers code and uses GPT-27 > >> (not > >> yet released) to anticipate processing needs. The AI will automatically > >> generate and inject stream processing topologies into your code as you > >> think about implementing them! > >> 4. WebWorker Threading: PHP, famously single-threaded, will leverage > >> browser WebWorkers to achieve parallelism through a patent-pending > >> technology we call "ClientThreading™️". > >> > >> Deployment Model > >> The extension deploys PHP code to the browser via WebAssembly, with each > >> user's browser becoming a node in your Kafka Streams application. > Scaling > >> is automatic - the more visitors to your website, the larger your > >> processing cluster becomes! > >> > >> Project Timeline > >> - Phase 1 (April 2025): Initial implementation and documentation > >> - Phase 2 (June 2025): Integration with TikTok's short-form video API > for > >> visual stream processing > >> - Phase 3 (September 2025): Launch of KafkaVerse - a metaverse > >> environment > >> where developers can physically walk through their streaming topologies > >> > >> Compatibility Guarantee > >> KStreamsJS-PHP will maintain strict compatibility with Internet > >> Explorer 6 > >> and Netscape Navigator. > >> > >> Security Considerations > >> All stream processing happens client-side, so sensitive data never > leaves > >> the user's browser! As a bonus feature, users' CPU and RAM will be > >> partially allocated to mining cryptocurrency to fund the project. > >> > >> Call for Feedback > >> I'm seeking feedback from the community on this proposal, particularly > >> regarding our innovative approach to AI-driven stream processing in the > >> browser. We believe this project will cement Kafka's position in the > >> "Web3 > >> Streaming" space. > >> > >> Please share your thoughts on this proposal. I'm particularly > >> interested in > >> how we can leverage newer browser APIs like the Ambient Light Sensor to > >> adjust throughput based on the user's lighting conditions. > >> > >> Best regards, > >> Elvis > >> > > > >