Article View: pl.comp.programming
Article #217030Re: Embedded HTTP Server
From: Maciej Sobczak
Date: Tue, 23 Jun 2020 21:13
Date: Tue, 23 Jun 2020 21:13
59 lines
4623 bytes
4623 bytes
> > Więc na czym polega postęp? > > Na braku konieczności ręcznego tworzenia i zarządzania wątkiem. Ale przecież nie ma takiej konieczności w żadnym z przykładów. Natomiast w Twojej propozycji nie tyle nie ma takiej konieczności, co raczej nie ma takiej możliwości, bo schowałeś to "zarządzanie" w jakimś obiekcie, którego API nie podałeś. > Co mnie jako twórcę biblioteki obchodzi, że ktoś ma burdel w callbackach. Ja gwarantuję, że moje wątki się skończą jeśli skończą się callbacki. To jest ciekawa propozycja na kolejną wersję biblioteki. > Bo np. na jednym porcie masz dane dla userów, na drugim możesz dawać output z debuggera, profilera, co tam sobie robisz. I to trzeba mieć osobne porty do tego? Ja na przykład w tej konkretnej chwili podłączam się przeglądarką do jednego portu pod adresem groups.google.com a tam zdumiewające rzeczy, jedna grupa dla tych co lubią C++, inna dla tych, co nie lubią, itd. Masa różnych rzeczy, dla różnych odbiorców. Wyobrażasz sobie, różne rzeczy na jednym porcie mieć? > Bo mutexy są kosztowne czasowo. A tak w liczbach, mógłbyś? W sensie - w porównaniu do całkowitego czasu, który przeglądarce zejdzie na pełnej obsłudze, od konstrukcji zapytania GET do zakończenia wyświetlenia obrazu na ekranie? > > > To jest koślawe, sorry. W HTTP masz nie tylko akcje GET i POST, ale i chyba ze 20 innych. > > > > Ale ja nie obiecuję obsługi tych 20 innych. > > Super, więc jak będę chciał mieć operację DELETE albo PUT, to muszę sobie szukać innego rozwiązania. Tak. Ewentualnie możesz zwrócić się do autora z uprzejmą prośbą, żeby to dorobił. Czy ten schemat pracy to jest dla Ciebie jakieś nowe zjawisko? > > I właśnie dlatego funkcje dla GET i POST *różnią się* sygnaturami. > > No fajnie, tylko to sztuczne rozróżnienie. Ale użyteczne w kontekście docelowego użycia. > > Czyli że: > > > > register(make_get_action(my_action)); > > > > jest lepsze od: > > > > register_get_action(my_action); > > > > Sorry - ani trochę. > > Jest bardziej elastyczne i tyle. Ja wolę mieć jedną metodę i zrobić sobie odpowiednie konstruktory. > Zresztą, najlepiej byłby mieć register(my_action) i wybierać wariant za pomocą typetraits. Łomatko. Więc najwyraźniej potrzebujesz innej biblioteki. Normalna sprawa. > Chciałeś review, to masz. Ja wiem, że parsery klepane ręcznie nie mające testów to proszenie się o kłopoty, będą wcześniej, czy później. Nie zrozumiałeś. To, że testów nie ma w pakiecie razem z biblioteką, nie znaczy wcale, że parser nie był przetestowany - ani tym bardziej, że w ogóle nie było żadnych testów. W ogóle pomysł, że razem z produktem dostaje się w tym samym pudełku jego stanowisko testowe, to jakiś wymysł nie mający analogii w żadnej innej branży, nawet w tych inżynierskich. -- Maciej Sobczak * http://www.inspirel.com
Technical Details
Message-ID:
<6db2110e-079d-4750-862b-6007345416d1o@googlegroups.com>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!2.eu.feeder.erje.net!feeder.erje.net!ecngs!feeder2.ecngs.de!78.46.58.241.MISMATCH!weretis.net!feeder7.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mailReferences:
<d423a072-9378-441b-ba06-e0657a1fa53bo@googlegroups.com> <3e267b62-0fdf-41c2-9f9c-c316f98b85c6o@googlegroups.com> <7cd03711-5fee-4322-b02a-c803fcf43b31o@googlegroups.com> <a0edbb57-72ba-48f1-bf82-7060d1cec401o@googlegroups.com> <d95ffe9d-570f-455c-bb22-0831b8c0a0dfo@googlegroups.com> <7718052c-c349-4eae-a60d-7a6108cb1b38o@googlegroups.com>Show Full Headers
Complete Article Headers
X-Received: by 2002:ac8:7cb8:: with SMTP id z24mr22681243qtv.190.1592946788132; Tue, 23 Jun 2020 14:13:08 -0700 (PDT) X-Received: by 2002:a37:6503:: with SMTP id z3mr21218698qkb.439.1592946787380; Tue, 23 Jun 2020 14:13:07 -0700 (PDT) Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!2.eu.feeder.erje.net!feeder.erje.net!ecngs!feeder2.ecngs.de!78.46.58.241.MISMATCH!weretis.net!feeder7.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail Newsgroups: pl.comp.programming Date: Tue, 23 Jun 2020 14:13:07 -0700 (PDT) In-Reply-To: <7718052c-c349-4eae-a60d-7a6108cb1b38o@googlegroups.com> Complaints-To: groups-abuse@google.com Injection-Info: google-groups.googlegroups.com; posting-host=213.108.152.51; posting-account=bMuEOQoAAACUUr_ghL3RBIi5neBZ5w_S NNTP-Posting-Host: 213.108.152.51 References: <d423a072-9378-441b-ba06-e0657a1fa53bo@googlegroups.com> <3e267b62-0fdf-41c2-9f9c-c316f98b85c6o@googlegroups.com> <7cd03711-5fee-4322-b02a-c803fcf43b31o@googlegroups.com> <a0edbb57-72ba-48f1-bf82-7060d1cec401o@googlegroups.com> <d95ffe9d-570f-455c-bb22-0831b8c0a0dfo@googlegroups.com> <7718052c-c349-4eae-a60d-7a6108cb1b38o@googlegroups.com> User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: <6db2110e-079d-4750-862b-6007345416d1o@googlegroups.com> Subject: Re: Embedded HTTP Server From: Maciej Sobczak <see.my.homepage@gmail.com> Injection-Date: Tue, 23 Jun 2020 21:13:07 +0000 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit