- Androidos tablet topic
- Intel Core i5 / i7 / i9 "Alder Lake-Raptor Lake/Refresh" (LGA1700)
- iPad topik
- Tuning kezdőknek
- OLED TV topic
- Házimozi belépő szinten
- Kormányok / autós szimulátorok topicja
- HiFi műszaki szemmel - sztereó hangrendszerek
- Milyen cserélhető objektíves gépet?
- Milyen billentyűzetet vegyek?
Hirdetés
-
AMD Radeon undervolt/overclock
lo Minden egy hideg, téli estén kezdődött, mikor rájöttem, hogy már kicsit kevés az RTX2060...
-
Hosszabb videót kaptunk a Killing Floor 3-ból
gp Továbbra is remekül fest a játék, a kérdés már csak az hogy meddig kell várnunk a teljes kiadásra.
-
KuKirin G4 - a sebesség ára
ma Meglehetősen erős gép ez, amivel óriásit lehet taknyolni, de néhány módosítással egy igen kedvező árú rollerré alakítható.
-
PROHARDVER!
JavaScript != Java (A JavaScript nem összekeverendő a Javával, két különböző programozási nyelvről van szó!)
Új hozzászólás Aktív témák
-
coco2
őstag
válasz sztanozs #7300 üzenetére
Az alkalmazáslogika saját problémáival egyébként is végezni kell. Az én problémám nem az. Az én problémám az, ha kényszerítő körülmények miatt csak annyira hatékonytalan eredményt lehetséges megalkotni, ami meg sem érdemli a bizalmat, hogy bármire is jó lesz. Az alkalmazásfejlesztésbe ölt hónapok ahhoz képest még mindig a kisebb probléma.
De nem kanyarodtunk el kicsit a topic-tól? Ez itt a javascript topic. Itt azért kérdeztem, hogy felvilágosítást kapjak róla, mi a legoverheadmentesebb hálózati adatkapcsolat, amit böngészős, kliens oldali javascript felkínálni képes lehet google chrome böngésző használatának peremfeltételével?
[ Szerkesztve ]
កុំភ្លេចប្រើភាសាអង់គ្លេសក្នុងបរិយាកាសអន្តរជាតិ។
-
sztanozs
veterán
pure http post és get ha kell visszaigazolás, különben mehet webrtc-n (UDP), de nem biztos, hogy megkapod az üzenetet. Persze vacakolhatsz sima tcp-vel is, de ki tudja meddig lesz támogatott (és az IE láz óta nem láttam olyan peremfeltételt, hogy kizárólag egy böngészőt lehet használni)
[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
martonx
veterán
Pont ez az, hogy nincsenek ott, legalábbis az asp.net core, nodejs, python, go és még ki tudja mennyi esetben, ha nem használsz felettük proxy webszervert (mint pl. apache, amit a legelső hsz-emben is írtam, hogy nem szabad ebben az esetben használni, mégis mindig ezzel jössz...), hanem csak önmagukban bután futtatod őket, hogy mondjuk figyelnek a 443-as porton, és ennyi, akkor ezek egyik általad problémásnak tekintett dolgot se fogják figyelni (csak amit direkt felparaméterezel bennük, hogy figyeljenek, mert használni akarod)
Én kérek elnézést!
-
dqdb
nagyúr
A titkosítás teljesítményre gyakorolt hatását ketté kell bontani kapcsolatfelépítésre és a már felépített kapcsolaton keresztüli kommunikációra.
Egy TLS kapcsolatnál a felépítés költsége az igazán jelentős, ez hálózati oldalon egy extra RTT körből jön össze a protokoll miatt (a TLS1.3 és a neked ajánlott HTTP/2 rendelkezik zero-RTT opcióval, szóval ez eliminálható), CPU oldalon egy privát kulcsos műveletből, ami a kriptográfiai műveletek között messze a legdrágább.
Először lefuttattam egy Core i5-4590-en a kéznél levő őskövület, 2012-es OpenSSL 1.0.1c egy szálon futó sebességtesztjét:
sign verify sign/s verify/s
rsa 2048 bits 0.004417s 0.000136s 226.4 7361.3
rsa 4096 bits 0.032730s 0.000511s 30.6 1955.3Aztán beugrott, hogy azóta bekerülhetett AES-NI támogatás az OpenSSL-be és a CNG-be is (saját céges teszt volt RSA aláírás témakörben, azon az OpenSSL-t használó C kód és a CNG-t használó C# kód ugyanazt a teljesítményszintet nyújtotta), ezért fordítottam OpenSSL 1.1.1c-t, és lemértem azzal is:
sign verify sign/s verify/s
rsa 2048 bits 0.000616s 0.000029s 1623.4 33982.7
rsa 3072 bits 0.002859s 0.000060s 349.8 16806.2
rsa 4096 bits 0.006546s 0.000104s 152.8 9661.8Az előrelépés látványos, és a fenti processzor egyetlen szálon 1623 aláírást tud végrehajtani másodpercenként a most elterjedt 2048 bites kulccsal. Mivel ennek a kulcsméretnek várhatóan már csak pár éve van, hogy átcsússzon nem ajánlottba (bár addig még rengeteg, hogy határozottan kerülendő legyen), bekerült a 3072 és 4096 bites kulcsméret is, azokat is érdemes nézegetni, hogy mire lehet majd 8-10 éven belül számítani. Az ECC opciókat kihagytam, azok CPU erőforrásban a 2048 és 3072 bites RSA között vannak valahol korábbi céges tesztjeink alapján.
Ha már felépült a kapcsolat, akkor azon titkosítva mennek át az adatok, ez ma tipikusan AES128/AES256. Lássuk a teszteket (csak frissebb OpenSSL, itt 10% javulás volt csak a korábbihoz képest):
type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes 16384 bytes
aes-128 cbc 138254.38k 146752.33k 153316.83k 148921.83k 151887.48k 151125.24k
aes-192 cbc 107198.00k 121410.13k 124547.81k 122201.29k 128566.72k 129934.99k
aes-256 cbc 97304.25k 107784.19k 107225.75k 105430.48k 106100.13k 104593.96kAzaz a ma elterjedt AES128-cal egyetlen szál 138 MB/s sebességre képes a gépemen, ebbe az általad megadott 15 MB/s sebességigény röhögve belefér, egyetlen átlagosan erősnek nevezhető CPU egyetlen szála 11%-os terheléssel kiszolgálja a létrejött TLS csatornán a titkosítást, ezt én elhanyagolható erőforrástöbbletnek nevezném. Az AES128 várhatóan még sokáig velünk lesz ajánlott formában, itt erőforrás szempontjából a jövőre nézve a legrosszabb eset az AES256-ra áttérés jelenti.
A fentiekből látható, hogy nem kell hatalmas szerverfarm ahhoz, hogy kiszolgálj 10000 kapcsolódást, elég egy szerver megfelelően sok maggal, de az is látható, hogy a HTTP Keep-Alive funkcióra egyszerűen kötelező építeni, mert ezzel a kapcsolatfelépítést tudod megspórolni, minden kéréshez külön TLS csatornát építeni drága hobbi és ahhoz tényleg kell az erőforrás (azonban mivel böngésző a túloldal, ezért ahhoz komolyan meg kell dolgozni, hogy kiiktasd azon az oldalon a keep alive-ot).
10000 tps-hez a szervert megfelelően össze kell rakni. Felejtsd el az async idők előttről itt ragadt HttpListener-t, az ASP.NET Core-ra építs IIS vagy Kestrel alapokon (és azonnal kapsz HTTP/2 támogatást), ahogyan martonx ajánlotta, vagy ha pehelysúlyra vágysz HTTP/2 nélkül, akkor ott a uHttpSharp. A kérések kiszolgálását kizárólag async kód végezze kihasználva az aszinkron futás lehetőségét az összes IO műveletnél, mert ilyen terhelés töredékénél is luxusnak számít az 1 worker thread/kérés működés (az általad írt 1 process/kérés pedig teljes mértékben az).
További olvasnivaló a témában itt.
tAm6DAHNIbRMzSEARWxtZW50ZW0gdmFka5RydIJ6bmkuDQoNClOBc4Ek
-
coco2
őstag
Hálás köszönetem a titkosítási performace reportért
Jól értettem, hogy az említett rsa sign kapcsolatépítés elején játszik csak? Ha igen, feltételezem, az ssl kapcsolat életben tartása a "nagyja", amit tehetek, és azt nem kellene elszúrni. Az XHR-nek utána kotorva olyasmit szűrtem le stackoverflow-n, hogy szerver kapcsolatépítésnél átdobja a http verziót, és ha az 1.1+, kliens oldalon a böngésző nyitva hagyja majd a tcp socketot az XHR teljesítése után is. Ha félreértettem, sikítsatok.
កុំភ្លេចប្រើភាសាអង់គ្លេសក្នុងបរិយាកាសអន្តរជាតិ។
-
sonar
addikt
Sziasztok,
Egy problémát szeretnék megoldani. De a js nagyon nem a területem.
Összehoztam egy táblázatot és azt szeretném megoldani, hogy ha cellákba kattintok akkor egy legördülő menü nyíljon le. Sajna nem jövök rá, hogyan is kellene helyesen csinálni. Legördülő lenyílik, de a tartalmak nem a cellának megfelelő.
próbáltam különböző ID-t adni a div-eknek és azt praméterként átadni a myFunction-nak, de vmit bénázok.<script>
/* When the user clicks on the button,
toggle between hiding and showing the dropdown content */
function myFunction() {
document.getElementById("myDropdown").classList.toggle("show");
}
// Close the dropdown if the user clicks outside of it
window.onclick = function(event) {
if (!event.target.matches('.dropbtn')) {
var dropdowns = document.getElementsByClassName("dropdown-content");
var i;
for (i = 0; i < dropdowns.length; i++) {
var openDropdown = dropdowns[i];
if (openDropdown.classList.contains('show')) {
openDropdown.classList.remove('show');
}
}
}
}
</script><td class="folyamatban">
<button onclick="myFunction()" class="dropbtn">Dropdown</button>
<div id="myDropdown" class="dropdown-content">
<a href="" target="_blank">Egy</a>
</div></td>
<td class="folyamatban">
<button onclick="myFunction()" class="dropbtn">Dropdown</button>
<div id="myDropdown" class="dropdown-content">
<a href="" target="_blank">ketto</a>
</div></td>[ Szerkesztve ]
A tudást mástól kapjuk, a siker a mi tehetségünk - Remember: Your life – Your choices!
-
Nagyzoli27
kezdő
Sziasztok!
Az alábbi oldalnál szeretnék az nettó 510Ft-is árhoz hozzá adni 1-et. De valamiért hibába ütközöm. Tudtok segíteni?
Köszönöm
[link]Az alábbi kóddal próbáltam meg.
document.getElementById("price_net_netto_IDE_102").innerHTML= Number((this+1))
[ Szerkesztve ]
-
Csepe
aktív tag
válasz Nagyzoli27 #7308 üzenetére
Így működik:
var price = document.getElementById("price_net_netto_IDE_102")
price.innerHTML= Number(price.textContent) + 1Nihil Novi Sub Sole /::\ https://bit.ly/2R7gwB2
-
petyus_
senior tag
válasz Nagyzoli27 #7310 üzenetére
Mert a .textContent() egy stringet ad vissza, és ezen akarod beállítani az innerHTML-t.
-
hiperFizikus
aktív tag
Ez így működik:
<Input type="button" onClick="alma()" value="dió">
function alma(){
alert(1);
}
de ennek az alternatív kódját nem tudom helyre tenni. Hogyan kell?:
<Input type="button" ID="id1" value="dió">
function id1.onclick(){
alert(1);
}
A gázt is és a féket is egyszerre nyomni nem menő dolog !
-
cattus
őstag
válasz hiperFizikus #7312 üzenetére
Mit szeretnél elérni? Ha az első megoldás működik, miért nem felel meg?
Do the thing!
-
hiperFizikus
aktív tag
Mert a
function id1.onclick(){
szerűséget láttam valahol, de nem tudom újra megtalálni.
Azt szeretném elérni vele hogy a script funkciója hívja meg az eventet, és ne a html tag eventje a funkciót .[ Szerkesztve ]
A gázt is és a féket is egyszerre nyomni nem menő dolog !
-
rikxjeee
tag
https://mobilarena.hu/tema/css_megjelenitesi_problemak/friss.html
Az utolsó néhány bejegyzést olvasd át, csak hogy mire számíts.
-
K1nG HuNp
őstag
válasz hiperFizikus #7314 üzenetére
Az első megoldásod teljesen helyes, főleg, hogy egy mezei onClick-ről beszélünk.
Szimulálhatsz eventeket JS-ben, de szerintem nem akarsz.
Az eventek kapcsán szerintem azt kell megérteni, hogy html elemek váltják ki őket és te a JS kódodban fel tudsz rájuk iratkozni, az esetek 99%-ban így foglalkozunk az eventekkel, nagyon ritka amikor saját, szintetikus eventeket hozunk létre, vagy az előbb belinkelt módon JS-ből triggerelünk browser eventet.
Feliratkozni egy html elem eventjére sima JS-ben az addEventListener fv.-el szokás, vagy inline, a html-tagbe beleírni az eventet és azt a függvényt amelyet szeretnél meghívni az event megtörténtekor (ahogy azt tetted is az első példádban).
rikxjeee
Ez mi a ........[ Szerkesztve ]
(raw_item.get("pk").unwrap().as_s().unwrap().to_string()).split("#").collect::<Vec<&str>>()[1].to_string()
-
hiperFizikus
aktív tag
válasz hiperFizikus #7314 üzenetére
Lehet, hogy nincs is ilyen megoldás .
Nem szimulációt kerestem, hanem direkt átírást .[ Szerkesztve ]
A gázt is és a féket is egyszerre nyomni nem menő dolog !
-
hiperFizikus
aktív tag
Én már belenyugodtam az első megoldásba. És lasacskán haladni kezdtem a 140 oldal átírásával . Kb. 1 oldal már megvan belőle, futási próba nélkül, csak nyers szintaxis helyesre véve. Már "csak" 139 oldalt kell megcsinálni. Nem tetszik a JS logikai operátorai, no de ez van.
A gázt is és a féket is egyszerre nyomni nem menő dolog !
-
hiperFizikus
aktív tag
Már kb. 10 oldalt megcsináltam, de elakadtam a tömböknél.
Az 1 dimenziós listás tömböt értem, csak azt nem tudom, hogy a 2 dimenziós táblázatokat, ill. mátrixokat, és a 3 dimenziós testeket, hogyan kódolják, nem beszélve a magasabb dimenziókról ?
keresgéltem a https://www.w3schools.com/js/js_arrays.asp -en de nem volt szerencsém.A gázt is és a féket is egyszerre nyomni nem menő dolog !
-
cattus
őstag
-
Nagyzoli27
kezdő
Sziasztok!
Vesszővel tagolt számot, hogy lehet számmá alakítani, hogy ne NaN értéket dobjon vissza?
Köszönöm!
-
Gave
addikt
válasz Nagyzoli27 #7323 üzenetére
Number( '127,2323'.replace(',','.') )
Here? For folks like us? Wrong city.., wrong people
-
I02S3F
őstag
Sziasztok! Olvastam, hogy van Google V8 JS Engine. Tehát a Firefox-nak is van sajátja. Miért írtak külön egyet (A Google) ? Hogy jobb és megfelelőbb legyen, mint az eddig megjelentek? Webfejlesztői szempontból mi a különbség? Programozás szempontjából?
-
martonx
veterán
Szia,
Sőt a Microsoftnak is van sajátja Chakra néven (bár ez már éppen kihalóban van). Minden nagy böngésző alá csináltak saját javascript engine-t. Hogy miért? Miért van minden országnak saját pénze? Mikor egy közös valuta is lehetne. Hát ezért.
Viszont mostanra elég jól szabványosodtak a javascript engine-ek, böngészők. Ez alól mára egyedül a halál fos Safari a kivétel, míg régebben az Internet Explorer volt ilyen (hál istennek az IE kihalt, remélem a Safari is megdöglik előbb-utóbb).Én kérek elnézést!
-
K1nG HuNp
őstag
Webfejlesztés során eddig különböző böngészők kapcsán csak a CSS okozott fennakadást számomra.
JS-ben egy ilyesi jött szembe, az pedig a String.contains() fv amit valamiért csak a mozilla motorja támogat. Persze egy sima indexOf használható bárhol helyette.A V8 beteg gyors, okkal használja a Node is motorként, de amúgy míg ezt a kommentet nem írtam meg nagyon eszembe sem jutott volna azon gondolkodni, hogy más js motoron vajon jó-e a kódom, szerintem neked sem kell.
[ Szerkesztve ]
(raw_item.get("pk").unwrap().as_s().unwrap().to_string()).split("#").collect::<Vec<&str>>()[1].to_string()
-
K1nG HuNp
őstag
Dolgozik itt valaki nagyobb csapatban ahol esetleg használnak GraphQL-t?
Nálunk melóhelyen mindenki fullstack-ként próbálja megoldani az adott featuret, magában, backendtől frontendig, így annyira nem látnám értelmét a graphql használatnak (plusz már elég régi futó projektek, nem fogunk hirtelen váltani).
Viszont ahogy itthon próbálgatom és használom saját kis cuccoknál, elég durva absztrakciót biztosít a front-endeseknek, hogy konkrétan semmit sem kell tudniuk az adatról, csak elkérni abban a formában amelyre pont szükség van, se több se kevesebb.
Akivel eddig beszéltem a technológiáról az volt a véleménye, hogy ez megint csak egy javascriptes bandwagon ami 3 hónapig fancy meg trendi, de igazából semmi újat nem hoz
Picit tényleg durva az, hogy a JS ennyire pörögni tud és kéthetente kijön az új trendi és menő lib/framework, de én pont ezért tartom az egyik legjobb közösségnek azt ami kialakult a nyelv körül. Bár ne lenne 300 euro egy JSConf BP jegy...
[ Szerkesztve ]
(raw_item.get("pk").unwrap().as_s().unwrap().to_string()).split("#").collect::<Vec<&str>>()[1].to_string()
-
hiperFizikus
aktív tag
Sziasztok
Kb. 2 hét alatt napi 15 oldalonként átírtam a programomat JS-re, 148 oldal 40 sor/oldal lett belőle . De csak szintaxisra fogadta el a Google Chrome böngészőm, bár első ütemben így is akartam .
Most következne a futásra való elenőrzése, de elégé aggódom, hogy a https://www.w3schools.com nem lesz elég hozzá . Majd jelentkezem, hafennakadásomlesz, ami szinte biztos, hogy lesz . Ugye azért egy kicsit drukoltok nekem ?
A gázt is és a féket is egyszerre nyomni nem menő dolog !
-
Jim-Y
veterán
válasz hiperFizikus #7333 üzenetére
Szia
Sajnos ebbe a topikba 150 oldal 50 sor alatt nem szoktunk hozzaszolast elfogadni de ugye nem haragszol?
-
hiperFizikus
aktív tag
Nem kell megilyedni, eszem ágában sincs mindet bemásolni, meg kinek lenne kedve ezen átrágni magát . Csak majd ha elakodok akkor azt a kis részletet belőle bemásolom, úgy is rövid és közepes csomó funkcióból áll az egész, a pár hosszabbtól eltekintve .
A gázt is és a féket is egyszerre nyomni nem menő dolog !
-
K1nG HuNp
őstag
engem amúgy most már komolyan érdekel a projekt, ennyi elszántság mögött csak van valami...
(raw_item.get("pk").unwrap().as_s().unwrap().to_string()).split("#").collect::<Vec<&str>>()[1].to_string()
-
disy68
aktív tag
válasz K1nG HuNp #7337 üzenetére
ja, van. egészen pontosan "magas transzcendentális gondolatok" vannak mögötte
“Yeah, well, you know, that’s just, like, your opinion, man.” — The Dude
-
martonx
veterán
válasz K1nG HuNp #7337 üzenetére
őrület... Amúgy meg meg is veheted: https://philosophy-science.com/
[ Szerkesztve ]
Én kérek elnézést!
-
K1nG HuNp
őstag
const [createAnswer] = useMutation(CREATE_ANSWER, {
update(cache, { data: { createAnswer } }) {
const { question } = cache.readQuery({ query: GET_QUESTION, variables: { id: props.match.params.questionid } })
cache.writeQuery({
query: GET_QUESTION,
data: {
question: {
...question,
answerCount: question.answerCount + 1,
answers: [...question.answers, createAnswer],
},
},
})
},
})egész durván kifolyik a szemem ettől életemben nem használtam ennyi objectet mint amit GraphQL / apollohoz kell.
A legszebb hogy inkább refetchelném a francba az egészet egy adatmódosítás (itt egy uj kerdes pl) után, de mint kiderült olyat csinálni nagyon szembemegy az user élménnyel. Így ugye cacheba írással minden instant
[ Szerkesztve ]
(raw_item.get("pk").unwrap().as_s().unwrap().to_string()).split("#").collect::<Vec<&str>>()[1].to_string()
-
Nagyzoli27
kezdő
Sziasztok
Hogy lehet egy classnak a css kódját előcsalni, ami nem egy element.stlye hanem egy külső doksiban van?
Köszönöm
-
sztanozs
veterán
válasz Nagyzoli27 #7341 üzenetére
F12
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
Gave
addikt
válasz Nagyzoli27 #7343 üzenetére
console.log(
(()=>{
return getComputedStyle( document.querySelector('.class') ).getPropertyValue('color');
})()
);Here? For folks like us? Wrong city.., wrong people
-
Dißnäëß
veterán
Sziasztok, kezdem.
w3schools, Udemy. A jó öreg klasszik menetrend: HTML, CSS, JS.Hogy állnátok neki ? Adott egy desktop gép. Szemeteljem össze a W10-emet a vackaimmal, vagy rántsak fel pár virtuális gépet VirtualBox alatt a gyakorlásokra, mit ajánlotok ? (Vmi Ubuntuval bennük, de tőlem lehet az is mind W10, van elég RAM is, CPU is).
Illetve kicsit minden mást is érintve, mennétek a sok cég által használt úton, hogy van egy fejlesztőkörnyezet (DEV), egy vagy több tesztelő (DEV TEST, UAT stb.) illetve éles (PROD), vagy egyelőre nem szarakodnátok ilyennel ? Infrához konyítok alap dolgokat, VM-ekben linuxot, docker konténereket megoldok, de valami jól bevált gyakorlat kellene nekem, amivel a frissen telepített és alapvetően Photoshop-al és játékkal belakott W10-emet nem szemetelem agyon (gondolok böngészőre, előzményekre, minden fiszfaszra).
Valami jólbevált utat szeretnék járni, ami saccperkábé optimális lehet elmélyedni a témában.
POKE 16017,44 ..... SYS 2077
-
martonx
veterán
válasz Dißnäëß #7346 üzenetére
Szvsz ez nem összeszemetelés. Nekem is a jól belakott win-emen fut minden (kivéve adatbázis, az a felhőben fut). Pláne, hogy az a "minden", az kb. semmi se tárhelyben, se erőforrásban.
Win10 alá nem kell VM-mel se szórakozni, simán a Store-ból letöltesz egy ubuntu-t, és máris mehet a móka, ha ragaszkodsz a linuxhoz.Én kérek elnézést!
-
coco2
őstag
Sziasztok!
Cookie kérdés, google chrome környezet, kliens oldal. Vastag réteg kliensen töröm a buksit, és jól jönne nekem domain-hez tartozóan 3-400 byte-nyi szöveges stringet tárolni, amit nem küld fel a szervernek csatlakozáskor. Bele éppen nem halok, ha mégis felküldi, egyszerűen csak semmi szükségem rá szerver oldalon, és lespórolnám, ha lehet. Van olyan opcióm szabvány szerint támogatottan?
កុំភ្លេចប្រើភាសាអង់គ្លេសក្នុងបរិយាកាសអន្តរជាតិ។
Új hozzászólás Aktív témák
Állásajánlatok
Cég: Ozeki Kft.
Város: Debrecen