Skip to content

Commit b458b34

Browse files
committed
readme
1 parent 1b49bdd commit b458b34

File tree

2 files changed

+65
-1
lines changed

2 files changed

+65
-1
lines changed

README.md

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -225,6 +225,38 @@ The library is optimized for:
225225
- Large file handling
226226
- Concurrent operations
227227

228+
### Benchmark Results
229+
230+
```bash
231+
goos: darwin
232+
goarch: arm64
233+
cpu: Apple M1
234+
BenchmarkJSONMarshal-8 4416622 261.0 ns/op 192 B/op 2 allocs/op
235+
BenchmarkXMLMarshal-8 975189 1230 ns/op 4704 B/op 10 allocs/op
236+
BenchmarkYAMLMarshal-8 213493 5284 ns/op 16728 B/op 47 allocs/op
237+
BenchmarkJSONUnmarshal-8 1000000 1742 ns/op 272 B/op 9 allocs/op
238+
BenchmarkXMLUnmarshal-8 370683 3104 ns/op 2328 B/op 56 allocs/op
239+
BenchmarkYAMLUnmarshal-8 142972 8640 ns/op 10128 B/op 108 allocs/op
240+
BenchmarkLargeJSONMarshal-8 66734 17580 ns/op 10953 B/op 2 allocs/op
241+
BenchmarkLargeXMLMarshal-8 12298 97192 ns/op 33456 B/op 15 allocs/op
242+
BenchmarkLargeYAMLMarshal-8 2500 466568 ns/op 1581555 B/op 3149 allocs/op
243+
```
244+
245+
#### Analysis
246+
- **JSON** shows the best performance in both marshaling and unmarshaling operations
247+
- Marshal: ~261 ns/op with only 2 allocations
248+
- Unmarshal: ~1.7 µs/op with 9 allocations
249+
- **XML** performs slower than JSON
250+
- Marshal: ~1.2 µs/op with 10 allocations
251+
- Unmarshal: ~3.1 µs/op with 56 allocations
252+
- **YAML** shows the highest resource usage
253+
- Marshal: ~5.2 µs/op with 47 allocations
254+
- Unmarshal: ~8.6 µs/op with 108 allocations
255+
- For large data operations:
256+
- JSON maintains efficiency with minimal allocations
257+
- XML shows moderate performance degradation
258+
- YAML shows significant increase in both time and memory usage
259+
228260
## Security
229261

230262
- Input validation to prevent XML entity attacks

README_TR.md

Lines changed: 33 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -219,12 +219,44 @@ Mevcut test kapsamı: >90%
219219

220220
## Performans
221221

222-
Kütüphane şunlar için optimize edilmiştir:
222+
Kütüphane aşağıdaki konularda optimize edilmiştir:
223223
- Bellek verimliliği
224224
- CPU kullanımı
225225
- Büyük dosya işleme
226226
- Eşzamanlı işlemler
227227

228+
### Benchmark Sonuçları
229+
230+
```bash
231+
goos: darwin
232+
goarch: arm64
233+
cpu: Apple M1
234+
BenchmarkJSONMarshal-8 4416622 261.0 ns/op 192 B/op 2 allocs/op
235+
BenchmarkXMLMarshal-8 975189 1230 ns/op 4704 B/op 10 allocs/op
236+
BenchmarkYAMLMarshal-8 213493 5284 ns/op 16728 B/op 47 allocs/op
237+
BenchmarkJSONUnmarshal-8 1000000 1742 ns/op 272 B/op 9 allocs/op
238+
BenchmarkXMLUnmarshal-8 370683 3104 ns/op 2328 B/op 56 allocs/op
239+
BenchmarkYAMLUnmarshal-8 142972 8640 ns/op 10128 B/op 108 allocs/op
240+
BenchmarkLargeJSONMarshal-8 66734 17580 ns/op 10953 B/op 2 allocs/op
241+
BenchmarkLargeXMLMarshal-8 12298 97192 ns/op 33456 B/op 15 allocs/op
242+
BenchmarkLargeYAMLMarshal-8 2500 466568 ns/op 1581555 B/op 3149 allocs/op
243+
```
244+
245+
#### Analiz
246+
- **JSON** hem marshal hem de unmarshal işlemlerinde en iyi performansı göstermektedir
247+
- Marshal: ~261 ns/op ve sadece 2 bellek tahsisi
248+
- Unmarshal: ~1.7 µs/op ve 9 bellek tahsisi
249+
- **XML** JSON'a göre daha yavaş performans göstermektedir
250+
- Marshal: ~1.2 µs/op ve 10 bellek tahsisi
251+
- Unmarshal: ~3.1 µs/op ve 56 bellek tahsisi
252+
- **YAML** en yüksek kaynak kullanımına sahiptir
253+
- Marshal: ~5.2 µs/op ve 47 bellek tahsisi
254+
- Unmarshal: ~8.6 µs/op ve 108 bellek tahsisi
255+
- Büyük veri işlemleri için:
256+
- JSON minimal bellek tahsisi ile verimliliğini korumaktadır
257+
- XML orta düzeyde performans düşüşü göstermektedir
258+
- YAML hem süre hem de bellek kullanımında önemli artış göstermektedir
259+
228260
## Güvenlik
229261

230262
- XML varlık saldırılarını önlemek için girdi doğrulama

0 commit comments

Comments
 (0)